Используйте переменную css / scss в компоненте React в качестве встроенного стиля - PullRequest
1 голос
/ 13 марта 2019

Есть ли допустимый способ использовать переменную SCSS или CSS в компоненте React в качестве встроенного стиля?

Я бы хотел сделать что-то подобное ниже

* 1006 СКС *

$red: #F65959;


:root {
  --red: $red;    
}

JS

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

export default style;

Ответы [ 2 ]

1 голос
/ 13 марта 2019

Это работает, но вам нужно присвоить переменную 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>
1 голос
/ 13 марта 2019

Это должно быть так, если вы хотите использовать css custom properties

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