01. TypeScript / Generic and Conditional Type / as const / infer

preview_player
Показать описание

TypeScript сложен, а Generic Conditional Type с infer внутри со старта вырывает мозг. Мне вырвал))

Друзья, TypeScript прекрасен. На мой взгляд очень нереально создать большой проект качественно и быстро без TypeScript.

Я сам буду разбираться в сложном TypeScript для того, чтобы вндерять его в продакшен максимально глубоко, и буду рассказывать об этом вам, делясь опытом.

У меня возникла боль: я не хочу в React+Redux для каждого action создавать отдельно type, мало того, я не хочу вручную объединять все эти типы для того, чтобы типизировать итоговый action, который может прилететь в reducer. С этим поможет нам Generic Conditional Type с infer внутри ;)

Статья, о которой речь идёт в видео:
Документация:

#infer #typescript #generic #conditional #react #actions
Рекомендации по теме
Комментарии
Автор

Кстати, в конце немного не заметил ошибку, пытаясь зарефаторить вложенность.
Итоговый результат:

type PropertiesType<T> = T extends {[key: string]: infer U} ? U : never;
type GetActionsTypes<T extends {[key: string]: (...args: any[]) => any}> = ReturnType<PropertiesType<T>>

То есть в типе GetActionsTypes нужно указать ограничение\constraint для передаваемого T, указав, что это ОБЯЗАТЕЛЬНО должен быть объект, у которого в качестве значения св-ва обязательно функция, принимающая что-нибудь и возвращаемая что-нибудь

ITKAMASUTRA
Автор

Вчера сама эту же статью нашла, несколько раз прочитала.а сегодня это видео все на свои места всталр

xmarsianca
Автор

Димыч, уже почти год, как работаю разрабом после твоего онлайн-курса, и до сих пор продолжаю смотреть и учить новую инфу в удобном формате для себя. Спасибо тебе за твой заряд, которого нет у других ^_^

MernBNS
Автор

Лучше много кода очевидного, чем мало неочевидного.

PerryCoxer
Автор

наконец-то понял для чего нужен этот infer. Спасибо, Димыч!

habalgarmin
Автор

10:56 Спасибо, всегда хотел сократить себе жизнь 👍

akionka
Автор

TypeScript, Generic, infer, type, Conditional Type.
Dimych is the best teacher of the world!

danilblack
Автор

Димыч, на мой взгляд твое видео одно из лучших по TS, Generic, as const, infer

dmag
Автор

Крутая тема. Полез по твоему совету в документацию поглубже. Очень кстати оказалось для большого количества actions и типов к ним. Сильно сократил код. Спасибо тебе.

goshana
Автор

С первого раза въехать очень сложно, но действительно магия!

zascia
Автор

Лучшее видео по TS, из всех что я видел! TypeScript, Generic, infer

disposables
Автор

Подход от простого к сложному очень крут. Именно у тебя.

andrewsam
Автор

Так вот где видос, который внесет ясность, смотрю 2 сезон пути самурая и примерно с 9-10 выпуска перестал понимать, что происходит, а оказывается есть такой видос . Спасибо за труд, бомбим дальше )

Erebor
Автор

Классно объяснил Generic. Посмотрел несколько видео других авторов, но не нашёл такого понятного объяснения.

dmitrii_gerasimov
Автор

Работаю на тайпскрипте 4 месяца, но еще довольно-таки нубас) Этот видос добавил понимания, спасибо!

dmitriystoyanov
Автор

Про infer прям очень полезно))) Я все постоянно заморачивался, а как же получить тип, который мы не знаем, но при этом он должен быть переменным, а тут такое простое решение) Прям гуд)

alexandrmerser
Автор

Димыч ты просто лучший! Добей пожалуйста путь самурая 2.0 !!!❤❤❤

oconnor
Автор

Димыч, ты все таки очень мегакрут. Никто даже платно так не объясняет, как это делаешь ты.

el_marca
Автор

то чувство когда хочешь поставить лайк в конце видоса, а оказывается уже поставил. Качественный контент!

АртёмПрохоренко-оъ
Автор

Димыч, спасибо что расписываешь по порядку от простого к сложному

lededit
join shbcf.ru