Size: a a a

TypeScript — русскоговорящее сообщество

2020 March 08

AK

Andrey Kurnoskin in TypeScript — русскоговорящее сообщество
keyof на юнионе ай-ай
источник

AK

Andrey Kurnoskin in TypeScript — русскоговорящее сообщество
источник

🦉⁣

🦉 ⁣ in TypeScript — русскоговорящее сообщество
Andrey Kurnoskin
keyof на юнионе ай-ай
понимаю, но функция?
источник

🦉⁣

🦉 ⁣ in TypeScript — русскоговорящее сообщество
спасибо
источник

AK

Andrey Kurnoskin in TypeScript — русскоговорящее сообщество
🦉 ⁣
понимаю, но функция?
источник

AK

Andrey Kurnoskin in TypeScript — русскоговорящее сообщество
keyof T === keyof string в данном случае, собственно говоря
источник

🦉⁣

🦉 ⁣ in TypeScript — русскоговорящее сообщество
а, спасибо
источник

🦉⁣

🦉 ⁣ in TypeScript — русскоговорящее сообщество
может знаешь, как преобразовать 'a' | 'b' | 'c' в тип ['a', 'b', 'c']

хочу такую же длину массив, как union с теми же элементами
источник

A

Abu in TypeScript — русскоговорящее сообщество
🦉 ⁣
может знаешь, как преобразовать 'a' | 'b' | 'c' в тип ['a', 'b', 'c']

хочу такую же длину массив, как union с теми же элементами
источник

A

Abu in TypeScript — русскоговорящее сообщество
источник

🦉⁣

🦉 ⁣ in TypeScript — русскоговорящее сообщество
не совсем
у меня есть тип

type Variants = 'a' | 'b' | 'c'

я хочу тип

type List = ['a', 'b', 'c']

чтобы создать массив exactly
источник

AK

Aleh Kashnikau in TypeScript — русскоговорящее сообщество
🦉 ⁣
не совсем
у меня есть тип

type Variants = 'a' | 'b' | 'c'

я хочу тип

type List = ['a', 'b', 'c']

чтобы создать массив exactly
Думаю не выйдет обойти union без рекурсии, в обратную сторону ваще не вариант?
источник

AK

Aleh Kashnikau in TypeScript — русскоговорящее сообщество
Из списка получать перечисление
источник

AK

Andrey Kurnoskin in TypeScript — русскоговорящее сообщество
🦉 ⁣
не совсем
у меня есть тип

type Variants = 'a' | 'b' | 'c'

я хочу тип

type List = ['a', 'b', 'c']

чтобы создать массив exactly
Да, только рекурсивно. Рекурсивно — будет больно CPU на длинном юнионе, увы
источник

AK

Aleh Kashnikau in TypeScript — русскоговорящее сообщество
Andrey Kurnoskin
Да, только рекурсивно. Рекурсивно — будет больно CPU на длинном юнионе, увы
Так а разве это вообще можно, тс же запрещает рекурсивные типы 🤔
источник

🦉⁣

🦉 ⁣ in TypeScript — русскоговорящее сообщество
Aleh Kashnikau
Думаю не выйдет обойти union без рекурсии, в обратную сторону ваще не вариант?
не, пока не вариант
источник

AK

Andrey Kurnoskin in TypeScript — русскоговорящее сообщество
Aleh Kashnikau
Так а разве это вообще можно, тс же запрещает рекурсивные типы 🤔
Вообще, я что-то подобное делал, так что весьма вероятно можно. Но в определённый момент, полагаю, type instantiation is excessively deep and possibly infinite :)
источник

VG

Vlad Garagan in TypeScript — русскоговорящее сообщество
🦉 ⁣
не совсем
у меня есть тип

type Variants = 'a' | 'b' | 'c'

я хочу тип

type List = ['a', 'b', 'c']

чтобы создать массив exactly
но у такого типизированного массива строгий порядок, а у union - нет
источник

🦉⁣

🦉 ⁣ in TypeScript — русскоговорящее сообщество
Vlad Garagan
но у такого типизированного массива строгий порядок, а у union - нет
очевидно
источник

VG

Vlad Garagan in TypeScript — русскоговорящее сообщество
🦉 ⁣
очевидно
это я к тому, что преобразовать массив в union можно, а для обратного преобразования нужно где-то взять порядок.
И как следствие - вероятно, нельзя сделать такое преобразование
источник