Я создал компонент Text, который получает пару реквизитов. Эти реквизиты передаются стилизованному компоненту, где применяются стили. Я не хочу передавать реквизиты в DOM, я хочу получить к ним доступ только внутри стилизованного компонента.
Преобразование реквизитов в временные реквизиты работает, но при этом создается повторяющийся код, который, как мне кажется, делает весь компонент излишне больше.
Я хотел бы знать, как передать некоторые реквизиты в мой стилизованный компонент, не передавая их в DOM и не переопределяя каждый реквизит. Я пробовал использовать mustForwardProps, но не могу заставить его работать с Typescript.
type Props = {
children: React.ReactNode;
size: number;
height: number;
color: string;
};
const StyledText = styled.p`
color: ${({ $color }) => $color};
font-size: ${({ $size }) => `${$size}px;`};
line-height: ${({ $height }) => `${$height}px;`};
...
`;
const Text: React.FC = ({ children, size, height, color, ...rest }) => {
return (
{children}
);
};
Подробнее здесь: https://stackoverflow.com/questions/762 ... ient-props
Как передать реквизиты стилизованному компоненту, не конвертируя их в временные реквизиты? ⇐ CSS
Разбираемся в CSS
1719341401
Anonymous
Я создал компонент Text, который получает пару реквизитов. Эти реквизиты передаются стилизованному компоненту, где применяются стили. Я не хочу передавать реквизиты в DOM, я хочу получить к ним доступ только внутри стилизованного компонента.
Преобразование реквизитов в временные реквизиты работает, но при этом создается повторяющийся код, который, как мне кажется, делает весь компонент излишне больше.
Я хотел бы знать, как передать некоторые реквизиты в мой стилизованный компонент, не передавая их в DOM и не переопределяя каждый реквизит. Я пробовал использовать mustForwardProps, но не могу заставить его работать с Typescript.
type Props = {
children: React.ReactNode;
size: number;
height: number;
color: string;
};
const StyledText = styled.p`
color: ${({ $color }) => $color};
font-size: ${({ $size }) => `${$size}px;`};
line-height: ${({ $height }) => `${$height}px;`};
...
`;
const Text: React.FC = ({ children, size, height, color, ...rest }) => {
return (
{children}
);
};
Подробнее здесь: [url]https://stackoverflow.com/questions/76263082/how-to-pass-props-to-styled-component-without-converting-them-to-transient-props[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия