Utility Types в TypeScript с нуля. Все Утилиты на Практике.
HTML-код
- Опубликовано: 22 май 2024
- Для расширения и модификации типов в TypeScript существует огромный набор встроенных утилитных типов, так называемых Utility Types. Эти утилиты доступны для использования во всех модулях и позволяют масштабировать существующие типы без повторения кода.
Таймкоды:
00:00 - Вступление
00:14 - Readonly
01:24 - Partial
02:45 - Required
03:56 - Pick
04:55 - Omit
05:42 - Record
07:18 - Exclude
08:25 - Extract
09:20 - NonNullable
10:28 - ReturnType
11:43 - Parameters
12:31 - Awaited
13:18 - Манипуляции со строками
Приятного просмотра! Буду благодарен за поддержку в виде комментария и лайка!
🎬 Видео keyof typeof - • Что такое keyof typeof...
👉 Исходный код, чат, воркшопы и поддержка канала: / wisejs
✔️ Если хочешь изучать программирование со мной, не забудь подписаться :)
ruclips.net/channel/UCOxq...
✔️ Мой телеграм канал: t.me/joinchat/RVq-cmt6n1SJRS7Z
#typescript #utilitytypes #тайпскрипт #утилиты #wisejs
При изучении я сначала не мог понять, чем Omit отличается от Exclude. Потом стало ясно, что Omit принимает интерфейсы и другие объектные типы, а Exclude принимает параметром union type из ключей (keyof как раз возвращает такое)
Оо огромное спасибо, это то что я так долго искал. Продвинутый TS на пальцах с примерами. Прям лайк огромный)
Грамотно и понятно объясняешь! Огромное спасибо за труды!
Желаю успехов!
Кайф, только вчера услышал впервые слово "утилитарный", а видос уже тут
Спасибо, дружище, ты лучший, я пересмотрел все твои уроки по TypeScript и благодаря тебе сэкономил кучу времени на изучение материала
Надеюсь у тебя всё хорошо, и ты жив и здоров)
Круто видео! Спасибо мужик! Pick и Omit это то что нужно было мне, когда типизацию дописывали))
Большое человеческое спасибо! 🤩
Очень полезный контент, и отличная подача! спасибо тебе большое! успехов в развитии канала)
Мощно , красава, жду следующий контент
Спасибо!
Спасибо за видео. Очень доступное объяснение. Держи лойс
Потужно 🇺🇦
Чудовий контент та відмінна подача, + є таймкоди та посилання на вихідний код!
Спасибо за видео, емко и ясно!
Агонь, класс, то что надо
Круто🔥👍
Великолепно!
Thanks for your courses
Спасибо большое! Пользуюсь только частью приведенных утилит, некоторые просто не мог понять, но ты помог прояснить картину!)
Круто!
Доходчиво разложил, спасибо
От души!
Крутая идея с зумом кода!
Топ, подписка лайк. Все доступно обьясняешь.
так держать, молодца делай еще видосики
Офигенный канал 🥂
мощно! спасибо!
Моё почтение!
Блин это супер видео! Потратил на него 2-3 часа чтобы подробно разобраться с каждым из Utility Types и не пожалел!
Почему-то эта тема очень плохо гуглится.
Лайк и подписка - однозначно!
Единственное - плохо понял для чего на практике могут понадобиться Exclude и Extract. По сути результатом будет имя ключа в виде строки если правильно понял.
Если не сложно напишите плиз.
написано правильно, а сказал чуток не так:
Readonly - делает поля объекта доступными только для чтения, а не обязательными
а так большое спасибо за видео и примеры, все очень доступно и понятно!)
Крутейшая инфа, автору большущее спасибо
Наверное NonNullable можно было бы применять для local/sessionstorage, тк там возвращается string | undefined
Cпасибо
Топ!
Очень интересно и понятно рассказываешь. Будут ли еще видео с разработкой каких либо пет проектов на React TS или Next TS?? Очень хочется именно в связке с TS разобраться. А нормальных ресурсов с актуальными версиями React и TS почти нет. В итоге что у человека в ролике работает, у меня не работает
🔥🔥🔥
Хотелось бы увидеть типизацию redux toolkit. Типизация во время обработки ошибок. Работа с axios. Спасибо!
👍🏻👍🏻
горестно видеть такие каналы и четко понимать почему нет видео и возможно уже не будет для захватчиков. Надеюсь вы хотя бы живы и здоровы.
В последнем примере с WithGetters значение записи (типизация функции) описана как ()=>string, хотя в примере объекта age=40 (т.е. number). Может там надо было добавить еще generic O для типа объекта и сделать что-то вроде ()=>O[T] ?
Жаль конечно ты положил болт на канал, огромный потенциал у тебя... Считаю умнее ход был был если продолжал канал и донатил, но это всего мое мнение. Любой конфликт заканчивается, всего тебе и твой стране хорошого и спасибо за предыдущие видео!
привет! можешь разобрать webpack? его основные возможности и способы их реализации
Завтра нужно еще раз посмотреть, иначе к утру из головы вытряхнется что-нибудь.😂
3:28 зачем кастинг использовать? можно же просто протипизировать ( tasks: ITask[ ] ) => Required [ ]. Если пишешь return {} as SomeType то через недельку что то может поменяться и код станет невалидным, так как ты внаглую присвоил тип
Як у тебе справи? Дякую за відео
Офігенська шпоргалка! Спасибі.
Что-то я смотрю одной мне непонятна разница между Omit и Exclude. несколько раз пересмотрела и совершенно не увидела разницы. Что тот что тот исключает ключи из первого объекта и только те, которые переданы во втором
Це туторіали топ-рівня, надзвичайно допомогли! Особливо коли опинився на проєкті, де TS.
type или interface?
Я так понимаю, чтобы utility types использовать, это только через type, через interface не получится
Вечером жди грузчиков. Принесут мой респект.
не души плиз. моргай хоть иногда))
😂😂😂
Зачем писать Date | undefined если isCompleted кже опционально
+
TypeError: user.blink is not a function
cool, but too too fast - need to pause and go back for 5-10 sec every 5-10 sec )
👉 Этот комментарий создан в качестве уважения автору и для продвижения его канала.
heroky
Жалко инфера не было
Про infer есть отдельный видос на канале
completedDate?: Date | undefined !== completedDate?: Date ? зач лишнее писать
Дякую. Перемоги нам
Тільки так! Перемоги нам!