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

Use css/scss variable in React component as inline style

是否有在 React 组件中使用 SCSS 或 CSS 变量作为内联样式的有效方法?

我想在下面做这样的事情

scss

$red: #F65959;


:root {
  --red: $red;    
}

js

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

export default style;

如果要用的话应该是这样的css custom properties

:root {
  --red: #{$red};
}
const style = {
  color: 'var(--red)',
};

它可以工作,但是如果你想在内联样式中使用它,你需要把变量给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>