Расширенная стилизация компонентов в React

Предположим у нас есть React компонент Block и мы создали в нем стилизованные при помощи Styled Components компоненты Button и Container:

const Container = styled.div` display: flex; flex-direction: column; width: 150px; `; const Button = styled.input` background-color: orange; font-size: 18px; margin: 5px; `;

А теперь представим, что нам нужен еще один компонент Button, только с белым текстом кнопки и зеленым фоном.

Для этого нам достаточно на базе нашего компонента Button создать новый компонент MdButton и прописать в нем только те свойства, которые мы хотим изменить:

const MdButton = styled(Button)` color: white; background-color: green; `;

Расположим в Block все наши стилизованные компоненты:

function Block() { return ( <Container> <Button>btn0</Button> <MdButton>btn1</MdButton> </Container> ); }

Создайте пустой React компонент Block1. С помощью Styled Components создайте в нем стилизованный див шириной и высотой в 150px, желтым фоном, и шириной границы 2px, назовите его DIVA.

На базе дива из предыдущей задачи создайте такой же див DIVB, только с зеленым фоном и шириной границы в 3px.

В Block1 создайте див Container. Разместите в нем два компонента DIVA и между ними один DIVB, созданные вами в предыдущих задачах к этому уроку.



Чат с GPT Компилятор