@typescript_ru

Страница 457 из 669
Vladimir
08.01.2018
21:06:58
приветствую, подскажите, как лучше для children? тип задавать React.ReactNode или же React.ReactChild | React.ReactChild[] и почему?

DimenSi
08.01.2018
21:07:22


Aleh
08.01.2018
21:08:33
так у тебя на скрине как раз способ объяснить)

через jsdoc

Google
Vladimir
08.01.2018
21:09:13
@mkusher должен знать t.me/typescript_ru/45610 ?

DimenSi
08.01.2018
21:09:34
так у тебя на скрине как раз способ объяснить)
я хочу объяснить, что мой промисс возвращает определенную функцию

Дмитрий
08.01.2018
21:09:39
Спойлер: jsdoc работает в вскоде весьма паршиво

Aleh
08.01.2018
21:10:12
Дмитрий
08.01.2018
21:10:23
DimenSi
08.01.2018
21:10:26
а вебшторм?

Дмитрий
08.01.2018
21:10:33
И что же там не работает?
Примерно так всё

Aleh
08.01.2018
21:11:00
Спойлер: jsdoc работает в вскоде весьма паршиво
вроде все возможности из тса по описанию функций есть

Дмитрий
08.01.2018
21:11:14
Я почему то решил, что уж жсдок то они сделали нормально и попробовал его заюзать для масштабной такой кодогенерации) Вкратце — не советую

Aleh
08.01.2018
21:11:20
Дмитрий
08.01.2018
21:11:25
Примерно так всё
Хз, у меня всё рабоатет. Кроме случая когда функция принимает объект который сразу же деструктивно растаскивается на переменные

Дмитрий
08.01.2018
21:11:26
Фактически в нём нет ничего

Google
DimenSi
08.01.2018
21:11:46
Aleh
08.01.2018
21:12:05
Фактически в нём нет ничего
можно конкретный пример, я жсдок в тсе немного тестил, у меня всякие штуки которые я смогут придумать заработали)

DimenSi
08.01.2018
21:12:26
либа предоставляет d.ts, но как мне объяснить, что возвращается ResolvedApi?

Aleh
08.01.2018
21:12:36
какой тип? что именно?
ну vscode ж подчеркивает ResolvedApi. надо его определить

DimenSi
08.01.2018
21:12:41


Дмитрий
08.01.2018
21:12:42
Тривиальный случай, не так ли?) Дальше-хуже
Да, но это самое грустное что я нашёл за последние пару месяцев использования

Aleh
08.01.2018
21:13:39
так в этом случае тип писать и не надо же

ну либо импортить еще ResolvedApi из модуля)

DimenSi
08.01.2018
21:14:09
у меня обычный js

я не могу импортировать такие вещи

Aleh
08.01.2018
21:14:44
звучит как диагноз

Bender
08.01.2018
21:14:49
ребята, в какой момент компилятор ищет и как использует файлы декларации.

Дмитрий
08.01.2018
21:15:42
можно конкретный пример, я жсдок в тсе немного тестил, у меня всякие штуки которые я смогут придумать заработали)
У меня не заработало ровным счётом ничего, лейбл JSDoc в репозитории просто шокирует изобилием нерабочих возможностей

Aleh
08.01.2018
21:15:54
у меня обычный js
так а если совсем не писать жсдоки, то не поймет тип разве?

Mike
08.01.2018
21:16:07
Aleh
08.01.2018
21:16:19
чего?
этой функции)

DimenSi
08.01.2018
21:16:26
нет

Google
DimenSi
08.01.2018
21:16:29
он нихера не понимает

Aleh
08.01.2018
21:16:51
добро пожаловать

Дмитрий
08.01.2018
21:17:16
Вы никогда не замечали что intellisense вам показывает разные виды комментов если они в одном файле с вами или в разных? Что не работает @template Что нет толком дженериков в классах

Фактически эта фича не работоспособна

https://github.com/Microsoft/TypeScript/issues?q=is%3Aissue+is%3Aopen+sort%3Aupdated-desc+label%3A%22Domain%3A+JSDoc%22

Aleh
08.01.2018
21:17:40
разве @template не работает?

я когда тестил, вроде взлетело

Дмитрий
08.01.2018
21:18:16
Нет

Aleh
08.01.2018
21:18:22


DimenSi
08.01.2018
21:18:23
как меня это затрахало, почему мой редактор не хочет мне ничего подсказывать

Дмитрий
08.01.2018
21:18:26
Это очередной мухлёж)

https://github.com/Microsoft/TypeScript/issues/19215

Дмитрий
08.01.2018
21:18:32
Здорово, правда?)

Я как-то день убил, думал у меня что-то не так

Aleh
08.01.2018
21:19:23
мда

это мб на классах только?

блин, я помню тестил их и еще удивился, что работает

Дмитрий
08.01.2018
21:20:11
Там на каждом шагу проблемы. Вообще мне просто нужно было типизировать API с прикольным JSDoc маркдауном(

DimenSi
08.01.2018
21:20:12
а че за @template?

я его не вижу в доках

Google
Admin
ERROR: S client not available

Aleh
08.01.2018
21:21:02
а че за @template?
https://github.com/Microsoft/TypeScript/wiki/JSDoc-support-in-JavaScript

там есть, но неактуально вот как оказалось)

Дмитрий
08.01.2018
21:21:37
Проблема в том, что вместо объединения фич вышло пересечение — ух, сколько я узнал вдобавок о проблемах самого jsdoc, это ппц)

DimenSi
08.01.2018
21:24:13
эх, вебшторм тоже не подсказывает

че за лажа

Dmitriy
08.01.2018
21:57:37
ребят а кто что делает с сообщениями в IDE аля method can be static? я так понимаю IDE на любой чистой функции так пишет, но мне например она нужна только в этом классе, вы в таких случаях игнорируете данную подсветку или отключаете или как вообще поступаете?

https://clip2net.com/clip/m330126/601cc-clip-26kb.jpg?nocache=1

вот пример

Aleh
08.01.2018
22:01:15
https://clip2net.com/clip/m330126/601cc-clip-26kb.jpg?nocache=1
Это какая-то рубрика вредные советы от ide

Дмитрий
08.01.2018
22:09:08
?

Я думаю это проблема в формулировке

А авторы имеют ввиду что не обязательно пихать в объект метод если в нем нет this

Morsik
08.01.2018
22:13:38
https://clip2net.com/clip/m330126/601cc-clip-26kb.jpg?nocache=1
т.е. у тебя сеттер, но не изменяющий обьекта? // придирки к названиям, еее

Dmitriy
08.01.2018
22:18:25
т.е. у тебя сеттер, но не изменяющий обьекта? // придирки к названиям, еее
этот класс содержит ссылку на выборку всех элементов определенного типа, а в функию аргументом идет выборка конкретных элементов того же типа, тоесть в архитектурном плане либо там - где вызывается эта функция - логику сюда перетащить и тут уже this использовать, либо в интерфейсе, как сказано выше, объявить

по сути я хочу чтобы вся логика с выборками этого типа лежала в одном месте

Bender
08.01.2018
22:26:55
Я правильно понимаю что при noImplicitAny: false, я могу без проблем использовать 3-rd party js библеотеки?

Mike
08.01.2018
22:27:20
да и с ними можешь

надо только интерфейсы описать

Google
Mike
08.01.2018
22:27:58
короче noImplicitAny вообще никак не связано со сторонними библиотеками

Bender
08.01.2018
22:29:08
я прочитал что noImplicitAny подставляет any ко всем модулям которые не имеют декларации

Mike
08.01.2018
22:29:27
не

он запрещает ситуации в коде где явно не указан тип или автовыведение типа неводит к выведению any

Bender
08.01.2018
22:32:05
как мне разобраться с импортами сторонних библиотек и с тем что ts пытается сделать/найти при импорте таковых. прежде чем спрашивать прочитал тонну информации/документации, по прежнему не grasp.

Aleh
09.01.2018
00:03:40
Так а проблемы какие-то конкретные возникли?

gangster555
09.01.2018
04:53:21
привет

Тимофей
09.01.2018
05:05:24
как мне разобраться с импортами сторонних библиотек и с тем что ts пытается сделать/найти при импорте таковых. прежде чем спрашивать прочитал тонну информации/документации, по прежнему не grasp.
Используешь стороннюю библиотеку: 1. Пробуешь npm i -D @types/package_name 2. Если такого пакета нет создаешь файл package_name.d.ts в котором пишешь declare module "package_name"

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