Как использовать цвета материалов в компонентах в стиле react?

#reactjs #material-ui #material-design #styled-components

#reactjs #материал-пользовательский интерфейс #материал-дизайн #styled-компоненты

Вопрос:

Можно ли использовать цвета пользовательского интерфейса Material в компонентах в стиле react? Если да, то каков синтаксис для этого?

Я пытаюсь следующим образом:

 import styled from 'styled-components/macro';
import blue from '@material-ui/core/colors/blue';
import indigo from '@material-ui/core/colors/indigo';

export const Icons = styled.span`

    color: {  indigo['A400'] };
`
;
  

Я тоже пробовал (все догадки):

 color: blue[500]
color: { blue[500] }
color: "blue[500]"
  

Я не могу найти способ, который работает.

Ответ №1:

Вы находитесь внутри литерала шаблона, поэтому используйте ${} синтаксис, если вы решите оценивать выражения JavaScript

 export const Icons = styled.span`
  color: ${indigo['A400']};
`;
  

Комментарии:

1. Спасибо вам за это.

2. Добро пожаловать. Вот styled-components документы, лежащие в основе их реализации помеченных шаблонных литералов: styled-components.com/docs/advanced#tagged-template-literals