Что такое keyof typeof в TypeScript? | Основы TypeScript #frontend #javascript #react #typescript

preview_player
Показать описание
Что такое keyof typeof в TypeScript?

Если вы посмотрели мои последние ООООЧЕНЬ интересные ролики, где я рассказывал про typeof и keyof в typescript, вы наверняка задаётесь вопросом, а где это можно применить?

Я вам с удовольствием покажу и расскажу.

Предположим у нас есть объект с ролями пользователя
const roles = {
ADMIN: 'admin',
SUPERADMIN: 'superadmin',
USER: 'user',
} as const;
Мы можем получить тип объекта и ключи этого объекта используя typeof и keyof

const roles = {
ADMIN: 'admin',
SUPERADMIN: 'superadmin',
USER: 'user',
CUSTOMER: 'customer',
} as const;

type RoleType = typeof roles;
type RoleKeys = keyof RoleType;
если мы добавим новую роль, она появится и в RoleKeys
А можем вывести тип Role в котором будут значения полей roles.

type Role = (typeof roles)[keyof typeof roles];
const newUser: Role = 'zombie'

Вааау, круто! Ставьте лайки и подписывайтесь на канал, если вы также в шоке как удобно работать с тайпскриптом!

#reactjs
#javascript
#typescript
#usestate
#useeffect
#frontend

Рекомендации по теме