在 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>
是否有在 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>