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

А как правильно типизировать мапы чего либо в виде

объектов любой структуры ? Хардкодить каждое свойство?
ну типо динамически c key не выйдет?

ну такой базовый пример конечно этих свойств может быть в разы больше
const someMap = {
a: 'sdfsdfsd',
b: {
id: 2,
prop: {
some: 'some'
}
},
}

10 ответов

15 просмотров
Drew-Naumenko Автор вопроса

а вот не канает ругаеться что у string нету проперти обьекта

Drew Naumenko
а вот не канает ругаеться что у string нету пропер...

https://www.typescriptlang.org/play?#code/C4TwDgpgBAGnUF4oG8oG0DWEQC4oGdgAnASwDsBzAXT0NMqgB8oyBXAWwCMIinZ4AvgCghAYwD2ZQlAAeeODEQohUKAEM8AcgAma-LvyaANCqic8yU6tFa12-Xu3GrUbXgCMn9ydUCTwoA

Drew Naumenko
а вот не канает ругаеться что у string нету пропер...

Ты хочешь чтоб вывод был ? Можно XXX в констрейнт Identity функции пихнуть

Drew-Naumenko Автор вопроса

я даже такое чёто пробовал делать typeof variantsMap[variant] === 'string'

Drew Naumenko
я даже такое чёто пробовал делать typeof variantsM...

ну это потому что он не может понять, что там за тип под этим индексом. их же там несколько разных может быть. поэтому он и матерится. у тебя тут только вариант через as делать

Drew-Naumenko Автор вопроса
Рой Волков
ну это потому что он не может понять, что там за т...

покаж плиз , ну я немного понимаю что оно отваливается тут само динамическое, то-есть неявное количество свойств и типов немного противоречит самой сути тс

https://www.typescriptlang.org/play?#code/C4TwDgpgBAGnUF4oG8oG0DWEQC4oGdgAnASwDsBzAXT0NMqgB8oyBXAWwCMIinZ4AvgCghAYwD2ZQlAAeeODEQohUKAEM8AcgAma-LvyaANCqic8yU6tFa12-Xu3GrUbXgCMn9ydUCTAgG4RGQA6NXCQziildwAmAGYAqAB6ZKhAPhBACRBADhBARhBALhBABhARAApQ8LV1fH4YAEpI6KQ4xJS0wF4QQFYQQCEQDJyC7KEgA

Drew-Naumenko Автор вопроса

Благодарность!, это работает в TS я совсем новый и что для стандартного JS норма и в порядке вещей то для тс быть не правильным такой подход но лучше видимо мап больше делать, но однотипных, чем одну но с разной структурой

Drew Naumenko
Благодарность!, это работает в TS я совсем новый...

я сам всего год в тс, ну имхо лучше ко всем структурам свой тип писать, так проще будет всем жить. кстати вот выше про typeof подсказывали, вот так работает тоже if (typeof x.aaa === 'object') { x.aaa.bbb = 123; }

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

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

а через ESC-код ?
Alexey Kulakov
29
30500 за редактор? )
Владимир
47
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
13
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
в JclConsole объявлено так: function CtrlHandler(CtrlType: DWORD): BOOL; stdcall; - где ваше объявление с stdcall? у вас на картинке нет stdcall
Karagy
8
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
6
Ребят в СИ можно реализовать ООП?
Николай
33
program test; {$mode delphi} procedure proc(v: int32); overload; begin end; procedure proc(v: int64); overload; begin end; var x: uint64; begin proc(x); end. Уж не знаю...
notme
6
у вас два процесса. один посылает другому сигнал. у вас есть код обоих процессов? если всё не так - расскажите как оно на самом деле. а именно кто кому чего, есть-ли консоли,...
Karagy
6
Карта сайта