Изменение переменной css в стилизованных компонентах из React props

#css #reactjs #css-grid #styled-components #emotion

#css #reactjs #css-сетка #styled-компоненты #эмоция

Вопрос:

Я использую CSS grid для создания динамической таблицы. Количество столбцов и строк являются динамическими и основаны на реквизитах, которые я получаю от более высокого компонента в React.

Как я могу изменить переменную css внутри стилизованного компонента (emotion) на данные, которые я получаю из React props?

Ответ №1:

Вот это в их документации: https://www.styled-components.com/docs/basics#passed-props

 // Create an Input component that'll render an <input> tag with some styles
const Input = styled.input`
  padding: 0.5em;
  margin: 0.5em;
  color: ${props => props.inputColor || "palevioletred"};
  background: papayawhip;
  border: none;
  border-radius: 3px;
`;

// Render a styled text input with the standard input color, and one with a custom input color
render(
  <div>
    <Input defaultValue="@probablyup" type="text" />
    <Input defaultValue="@geelen" type="text" inputColor="rebeccapurple" />
  </div>
);