在React组件中使用css / scss变量作为内联样式

时间:2019-03-13 13:25:33

标签: css reactjs variables styles inline

有没有一种有效的方法可以在React组件中以内联样式使用SCSS或CSS变量?

我想在下面做类似的事情

scss

$red: #F65959;


:root {
  --red: $red;    
}

js

const style = {
  color: '--red',
};

export default style;

2 个答案:

答案 0 :(得分:1)

如果要使用css custom properties

,应该是这样的
:root {
  --red: #{$red};
}
const style = {
  color: 'var(--red)',
};

答案 1 :(得分:1)

它正在运行,但是如果要以内联样式使用它,则需要将变量赋予var()

示例

function App() {
  const style = {
    color: "var(--red)"
  };
  return <div style={style}>Foo</div>;
}

ReactDOM.render(<App />, document.getElementById("root"));
:root {
  --red: #F65959;    
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/16.6.3/umd/react.production.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/react-dom/16.6.3/umd/react-dom.production.min.js"></script>

<div id="root"></div>