Я начал использовать styled-components
в одном из моих проектов.Я хотел бы знать рекомендуемый способ переопределить / расширить их в контейнерах, которые его используют.
Например:
Многоразовый Button
компонент:
const Button = styled.button`
background: transparent;
border-radius: 3px;
border: 2px solid red;
color: red;
`;
СейчасПредположим, я использую это в разделе, но нужно применить левое поле.Я могу сделать это несколькими способами:
Расширить:
const NewButton = styled(Button)`
margin-left: 10px;
`;
Встроенный стиль:
<Button style={{marginLeft: '10px'}}>Normal Button</Button>
Расширение выглядит как лучший способ, если существует более 3,4 правил для переопределения.
Но, скажем, для одного правила, такого как margin
, padding
, display: none
, которое может встречаться очень часто, создание новой обертки каждый раз добавляет много шаблонов.Встроенные стили хорошо работают в этом аспекте, но у них есть свои подводные камни .
Какой оптимальный подход хорошо подходит для больших приложений?