@typescript_ru

Страница 615 из 669
Sukhrob
22.05.2018
14:53:09
VSCode
да... vscode показывает тип ... хреново...

andretshurotshka?❄️кде
22.05.2018
14:54:14
VSCode IDEA 1:0

ваще это странно

там же один и тот же тссервер

Google
Sukhrob
22.05.2018
14:55:27
может его пора перезапустить???

Сергей
22.05.2018
14:55:52
andretshurotshka?❄️кде
22.05.2018
14:57:11
нет же
разве

Сергей
22.05.2018
14:57:36
разве
в вскод запускается внутренний, и вполне может быть глобальным а можно вообще из проекта подтянуть а в idea хер знает как оно там работает

Sukhrob
22.05.2018
15:05:14
в общем тогда получается мой вопрос оффтоп((

Aleh
22.05.2018
15:08:34
это от таргета зависит ж

"typescript": "^2.8.3"
главное чтобы target был > es5

не спрашивайте почему

Sukhrob
22.05.2018
15:10:35
не спрашивайте почему
спасибо, но это уже я понял из предыдущих постов пока не ясно как теперь заставить ИДЕА заработать

Sukhrob
22.05.2018
15:11:06
стоит интеграция с tsserver?
не знаю как это проверить

Aleh
22.05.2018
15:11:47
не знаю как это проверить
в настройка idea там где плагин к typescript

Google
Aleh
22.05.2018
15:12:09
ага, вроде оно

Sukhrob
22.05.2018
15:13:08
ага, вроде оно
я думал что у меня плагина нет... а как он все-таки называется-то?

Aleh
22.05.2018
15:13:19
блин, ну тут остается только советовать что-то уровня "выключить-включить"

я думал что у меня плагина нет... а как он все-таки называется-то?
typescript language service стоит галочка, значит все что со своей стороны вы могли сделать уже сделали)

Sukhrob
22.05.2018
15:14:13
блин, ну тут остается только советовать что-то уровня "выключить-включить"
я и спрашивал вверху, может перезагрузить его или нет...

Aleh
22.05.2018
15:14:19
а, ну и еще раз проверьте target + попробуйте убить tsserver/idea и перезапустить

Sukhrob
22.05.2018
15:14:47
а, ну и еще раз проверьте target + попробуйте убить tsserver/idea и перезапустить
вот это я завтра и буду делать перезапуск это еще тот гемор(...

Sukhrob
22.05.2018
15:16:27
а то он меня уже так замучил. Уже пару раз пришлось перезапускать всю идею... а это не удобно.

Aleh
22.05.2018
15:18:33
ну на винде через менеджер процессов

не оч шарю как на винде, местный аналог pkill -KILL tsserver

Artur
22.05.2018
15:20:52
Sukhrob
22.05.2018
15:21:24
Там же кнопка прям есть
знать бы где это там???

Artur
22.05.2018
15:21:28
У меня недоступна потому что индексация идёт

Sukhrob
22.05.2018
15:22:01
вот не знал что это и есть тот самый сервер... спс! щаз попробую перезапустит

У меня недоступна потому что индексация идёт
ГДЕ ВЫ РАНЬШЕ БЫЛИ? ))) Все заработало! Ура, теперь итераторы у меня полностью в шоколаде!

Google
Max
22.05.2018
17:20:16
Парни, через дженерик пробрасываю тип интерфейса, а через T тип создаю по нужной структуре объект. Но тайпскрипт ругается и говорит что данная структура не подходит







если явно указываю const resp: Corleone то всё ок, но если через T тип, то нет. .. =_=



Morsik
22.05.2018
18:21:07
покажи T

Дмитрий
22.05.2018
18:21:27
с другой стороны флоу не умеет символы
@@iterator и @@asyncIterator, в ближайшем будущем можно будет сразу слоты ес спеки описывать лол

Max
22.05.2018
18:21:35


вот сам интерфейс который как Т

Morsik
22.05.2018
18:22:02
а T где?

Max
22.05.2018
18:22:03
вот использование и определение

Max
22.05.2018
18:22:04


Morsik
22.05.2018
18:22:20
ок, напиши там T extends Corleone

где декларируешь T

Max
22.05.2018
18:22:43
вроде бы работает

но я пишу абстрактную штуку :(

мне как раз нужно, чтобы под разные интерфейсы проходило

для этого и заюзал T

иначе бы вручную сразу бы и прописывал Corleone

Google
Morsik
22.05.2018
18:23:17
тогда не пиши all,new, old

Max
22.05.2018
18:23:32
безусловно я не буду)

это я тестирую

точнее проверяю

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

потому что тайпскрипт не ругается, если я скину объект как в интерфейсе Corleone, или любой другой объект

и я решил руками всё это проверять

Admin
ERROR: S client not available

Дмитрий
22.05.2018
18:25:24
А что с ним? ??

andretshurotshka?❄️кде
22.05.2018
18:26:01
ну всякие typeof symbol

Max
22.05.2018
18:27:48
тогда не пиши all,new, old
так а есть какой-нибудь вариант передавать тип данных в эту функцию?

Artur
23.05.2018
06:07:14


Всем привет! https://bit.ly/2s6wLzB Как заставить ТС проверять, что массив состоит из правильных тюплов?

Олег
23.05.2018
06:11:53
твой массив состоит из правильных тюплов

потому что тут структурная типизация

Artur
23.05.2018
06:13:14
А, чё то думал классы так будут типизироваться

Тогда такая фигня: https://bit.ly/2kfFQCD Как заставить вывестись тип?)



Sukhrob
23.05.2018
06:17:22
а какая ошибка должна быть?

Google
Artur
23.05.2018
06:17:52
а какая ошибка должна быть?
Ну как бы new Class1 это не экземпляр Class2

Sukhrob
23.05.2018
06:18:32
Ну как бы new Class1 это не экземпляр Class2
а где выше указание, что второе место в этом массиве должен быть экземпляром?

Sergey
23.05.2018
06:20:44


Sergey
23.05.2018
06:22:29
Блин

Там же дженерик кривой

Sukhrob
23.05.2018
06:22:45
type ClassConstructorInstance<I> = [ClassConstructor<I>, I]
new Class1 похоже можно привести к {}

Nikita
23.05.2018
06:22:47
У тебя же там тип указан {}

Sergey
23.05.2018
06:23:11
Если явно тип указать то работает как надо

Sukhrob
23.05.2018
06:23:56
type ClassConstructorInstance<I> = [ClassConstructor<I>, I]
вроде так надо бы: function createMap(map: ArrayOfClassConstructorInstance<Class1>) { } createMap([ [Class1, new Class1], [Class1, new Class2] // Должна быть ошибка, а её нет :( ])

Artur
23.05.2018
06:27:48
У тебя же там тип указан {}
Ну вот не оч понятно что указать

Можно конечно для createMap написать штук 50 перегрузок для разной длины массива

Anton
23.05.2018
06:28:24
дженерик сделай

Artur
23.05.2018
06:29:08
Ругается, но совсем не на то

Sukhrob
23.05.2018
06:29:23
Но мне решение надо в общем виде, там по идее может быть много разных классов
чтобы в выражении function createMap(map: ArrayOfClassConstructorInstance<Class1>) { } не фигурировала ссылка на конкретный класс чтоли?

Anton
23.05.2018
06:29:54
так с extends надо, чтобы не ругался, наверное

Страница 615 из 669