Теперь Кью работает в режиме чтения

Мы сохранили весь контент, но добавить что-то новое уже нельзя

Как с помощью TypeScript в React компоненте описать входящие props, если жду разные? (в зависимости от props.type: "bigCard" | "smallCard" )

ПрограммированиеНаписание кода+4
Эдуард
  ·   · 3,8 K
старший разработчик в pseven.io  · 7 окт 2021
Вам нужно сделать два разных интерфейса под каждый вариант. При этом поле type будет иметь не тип string, а конкретно "bigCard" в одном случае и "smallCard" в другом. Пример:
interface BigCard {
  type: 'bigCard';
  bigCardProp: string;
}

interface SmallCard {
  type: 'smallCard';
  smallCardProp: number;
}
При этом на стороне потребителя входной параметр типизируется как BigCard | SmallCard:
function MyComponent(prop: { card: BigCard | SmallCard })
Это также добавит дополнительную проверку того, что в type указано конкретно либо "bigCard" либо "smallCard", а не какая-то произвольная строка.
Что-то осталось непонятно? Спроси в нашей группе в Телеграме!Перейти на t.me/jstsmentor
1 эксперт согласен
Помощь пользователям ПК и ноутбуков - спрашивайте   · 20 апр 2023  · itmen.help
Для описания входящих props в React компоненте, которые могут иметь разные типы в зависимости от значения props.type, используйте TypeScript и перечисление типов (union types). Вот пример кода: interface BigCardProps { type:... Читать далее
Компьютерная помощь в вашем городеПерейти на itmen.help/uslugi
1 эксперт согласен
Да, я зарабатываю на ✺Толоке 👇  · 10 апр 2023  · toloka.yandex.ru/promo
В TypeScript для описания входящих props с разными типами можно использовать условные типы. Например, для React компонента, который ожидает пропсы type с типом "bigCard" или "smallCard", можно использовать следующий код: type... Читать далее
Заработать пару сотен рублей онлайн на Яндекс✺Толока! Регистрируйся.Перейти на toloka.yandex.ru/promo