2

是否可以将所有内联 Radium 样式提取到类中,以便 html 不会因所有内联样式而变得丑陋?

我有这个:

@Radium
class ExtendedComponent extends Component {
  render() {
    return (
      <div style={[styles.color, styles.box]}</div>
    );
  }
}

const styles = {
  color: {
    color: green
  },

  box: {
    borderColor: red,
    height: '20px',
    width: '20px'
  }
};

现在输出的 HTML 看起来像这样:

<div style="color: green; border-color: red; height: 20px; width: 20px;"></div>

我希望它是这样的:

<div class="c1"></div>

CSS 规则将包括以下内容的地方:

.c1 {
  color: green;
  border-color: red;
  height: 20px;
  width: 20px;
}
4

1 回答 1

0

不是我知道的。就其本质而言,Radium 用于动态计算和应用“内联”样式,并通过在 JS 中捆绑样式来利用 React 组件“模块”。

React Style 从下面链接中的列表中,这似乎可以满足您的需求。请参阅“在构建时将样式提取到 CSS 中”部分 - https://github.com/js-next/react-style#extracting-styles-into-css-at-build-time

替代库 这里是一些替代方案的链接,可以满足您的需求:https ://github.com/FormidableLabs/radium/tree/master/docs/comparison 。

于 2016-12-16T13:39:21.030 回答