Как выделить тип из массива | Советы TypeScript #frontend #javascript #react #typescript

preview_player
Показать описание
У нас есть массив ролей. Пользователь, администратор и супер администратор.

Мы хотим выделить тип роль супер админа и администратора и пользователя.

const roles = ["user", "admin", "superadmin"] as const;
type RoleAttemp1 = typeof roles;

Это даст нам только тип массива.

type RoleAttemp2 = (typeof roles)[0 | 1 | 2];

Тогда попробуем такой вариант, это сработает, но это не очень удобно, особенно если наш список ролей в будущем расширится.

type Role = (typeof roles)[number];
Тогда мы сделаем вот там, укажем numbers и это будет означать все индексы. Это будет означать что мы взяли все элементы этого массива для нашего типа.

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

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