169 похожих чатов

Https://Www.Typescriptlang.Org/Play?#Code/KYOwrgtgBAwg9gGwCoE8AOwoG8BQV9QgCGEwANHgWgBZwjk4C+OOCwALlANbBcBc3YCjgAzKO3TBRsRKgxQAvDOSSA2vBUYAdMVIBdHEA Что я делаю не так?

13 ответов

11 просмотров
Dmitriy-Shuleshov Автор вопроса

https://www.typescriptlang.org/play?#code/KYOwrgtgBAwg9gGwCoE8AOwoG8BQV9QgCGEmAvFAOTGmUA0eBaAFnCOVS28PTgL44cCYABcoAa2DiAXBOAo4AMygj0wJbESoMUQZPFQK8ZGoB0NYDn2HNJjKa7scQA Хм так использовать верно?

Dmitriy-Shuleshov Автор вопроса

Хочу что б тип был "name" | "phone" И потом правильные значения передавать. Я так понимаю что енам можно заюзать? Как сделать это красиво?

С енамами лучше так не работать

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

Dmitriy-Shuleshov Автор вопроса

А как лучше решить мою задачу?

не совсем понимаю, в чём твоя задача заключается суть в том, чтобы не смотреть внутрь енама enum ColType { name = 'name', phone = 'phone', } const pek = (x: ColType) => { switch (x) { case ColType.name: return alert('pew pew'); case ColType.phone: return alert('pew pew'); default: return never(x) } } pek(ColType.name)

https://tsplay.dev/mx5o8W

Dmitriy-Shuleshov Автор вопроса

Понял Те лучше полагаться на енам, не смотря на то как реализован доступ к ключам енама?

Dmitriy-Shuleshov Автор вопроса

Ага понял спасибо, просто заклинило чет на том что мне обязательно строка нужна

енам позволяет абстрагироваться от реального значения и использовать исключиьтельно тип перечисления. то есть ты можешь написать код как выше с switch-case, совершенно не задумываясь, что в енаме лежит – просто описываешь кейсы своей абстрактной логики можно, на самом деле, заглядывать внутрь енама. но я зарёкся после того, как увидел js из него полученный. там всё сильно зависит от внимательности

внимай

Dmitriy-Shuleshov Автор вопроса

Да ага понял вроде догнал еще тут https://t.me/ts_cool/166965 Спасибо за пояснение👍

Я не совсем понял это сообщение, поэтому решил разуплотнить)

Похожие вопросы

Обсуждают сегодня

я не магистр хаскеля, но разве не может лейзи тип конвертнуться в не-лейзи запросив вычисление содержимого прям при инициализации?
deadgnom32 λ madao
35
How to create an OS in C? what to study?
Linus
18
читать файл максимально быстро? странный вопрос))
zamtmn
53
Привет, кто может сделать юзербота с апи? Задачи: - создавать группы - создавать каналы - задавать для созданных каналов аватарку или эмоджи, имя группы - добавлять в группы...
Lencore
11
тоесть, указав return eax, сгенерируется никому ненужная инструкция mov eax,eax ?
Aiwan \ (•◡•) / _bot
24
@HemulGM Параметры у AddStream поменялись? Несостыковка какая-то
Катерина Свиридова
12
Подскажите, есть какие-то события создания/уничтожения у TFrame по типу TForm (OnCreate и OnClose/OnDestroy) ? Как отловить создание TFrame и "перед" уничтожением. На Tframe р...
Денис
8
а чем хуже?
Alexey Kulakov
10
Компания Elif ищет менеджера проектов, который будет заниматься поиском и ведением новых проектов. Прежде чем приступить к работе, вам нужно пройти наш недельный курс, где вы ...
Elif
1
Всем привет, передавал ли кто-нибудь File с рендер процесса в main? Просто виснет js. Где именно я без понятия. Не отрабатывают никакие логи. Как только я передаю обычный масс...
Ilya Ilya
4
Карта сайта