Извлечь имя класса со стилизованными компонентами

Я использую библиотеку пользовательского интерфейса, которая требует, чтобы вы передали имя класса в реквизите skin, чтобы настроить внутренности компонента. Что-то типа:

import styles from './ProfileInfoSkins.css';

...

<ProfileInfo skin={{ headline: styles.headline }}

Мне интересно, есть ли способ сделать это с помощью стилизованных компонентов и избежать создания отдельного файла css.


person Emi    schedule 13.03.2020    source источник
comment
Это на самом деле файл CSS? или это объект экспортированного стиля?   -  person Drew Reese    schedule 13.03.2020


Ответы (1)


.attrs

Это цепной метод, который прикрепляет некоторые реквизиты к стилизованному компоненту. Первый и единственный аргумент — это объект, который будет объединен с остальными реквизитами компонента.

Присоединение дополнительных реквизитов

const StyledProfileInfo = styled(ProfileInfo).attrs(
  props => ({
    skin: {
      headline: { /* headline style object */ },
      // add whatever other skin object properties needed
    },
  }), 
);
person Drew Reese    schedule 13.03.2020