
D
22.01.2018
09:57:35
https://github.com/Microsoft/TypeScript/pull/21316
Conditional типы, может а 2.8 будут!

Friedrich
22.01.2018
10:21:51
Ого!

Aleh
22.01.2018
10:22:14
вау

Andrey
22.01.2018
10:22:26
ООООО

Google

Morsik
22.01.2018
10:24:11
осталось месяца 3, да?

Andrey
22.01.2018
10:24:46
Взял и эмоции оборвал.

ed
22.01.2018
13:14:01
Привет, прошу не гнать ссаными тряпками, подскажите плиз как типизируется подобная конструкция:
export const setDefaultResponseMapper = (callback: Function) => {
setDefaultResponseMapper.callback = callback
}
можно линку на доку)

Сергей
22.01.2018
13:18:34
никак

ed
22.01.2018
13:22:53
никак
ок, как это написать правильно? опять же, можно линку на доку) если не сложно

Friedrich
22.01.2018
14:15:31

ed
22.01.2018
14:17:21
Уточните запрос. Что именно хочется типизировать?
В typesript только вливаюсь, поэтому могу говорить (глупости).
Но простым языком, у меня есть такой кусок кода, я хочу его переписать на «идеальны» typescript, чтобы он не подсвечивал ошибку.
в данном случае он крашится ругаясь на setDefaultResponseMapper.callback , интересует где посмотреть как переписать подобный «старый» js на новый typescript

Friedrich
22.01.2018
14:18:10

andretshurotshka?❄️кде
22.01.2018
14:37:12

Mike
22.01.2018
14:37:49
ты хочешь компаил тайм исполнение кода?

ed
22.01.2018
14:41:22
это функция внутри бибилотеки (npm пакет), которая импортится в проект и туда передается «кастомный callback» что всвою очередь переписывает какую-то глобальную переменную
ну или становится атрибутом

Google

andretshurotshka?❄️кде
22.01.2018
14:42:06
$Call из флоу)

Mike
22.01.2018
14:44:02
не очень понял что это

Тимофей
22.01.2018
14:47:19

Сергей
22.01.2018
14:48:12
либо нужно жестко задать тип входного callback
чтобы .callback и аргумент функции совпадали по типу
только
.callback будет типа MyCallBack | null

Friedrich
22.01.2018
14:53:16

Mike
22.01.2018
14:54:13

Friedrich
22.01.2018
14:54:26

Mike
22.01.2018
14:54:30
У меня даже вакансия есть на эту тему (на самом деле не совсем)

Friedrich
22.01.2018
14:54:55
Это в стандартном компиляторе, или ты про свой кастомный говоришь?

Mike
22.01.2018
14:56:32
ну он у меня кастомный на пару строк. У компайлера апи есть. У меня перед компиляцией отдельным запуском запускается хреновина на ноде которая компилер юзает и процессит файлы
конкретно я ничего в компаил тайме не евалю, но ничего особо не мешает. Я в одном месте например темплейты инстанциирую, как в плюсах, т.е. на один тип каждый генерик параметр генерю отдельный тип без генерик параметра. Нужно для специфического поведения instanceOf

Aleh
22.01.2018
17:24:44
там кстати прикольный синтаксис хотят добавить для ретурнтипов тоже https://github.com/Microsoft/TypeScript/pull/21316#issuecomment-359449739

andretshurotshka?❄️кде
22.01.2018
17:28:02
а ретурнтайп который зависит от инпута?

Aleh
22.01.2018
17:29:30
я так понимаю вместо ...args: any[] писать конкретный тип

Vitaly
22.01.2018
21:42:46
Гайз, подскажите пожалуйста, в монорепе делаю
tsc --project tsconfig.lib.json --listFiles --declaration --declarationDir types
В конфиге есть exclude node_modules
В итоге тс пытается скопилить модули из рута
забавно то, что в src один пустой файлик
ts 2.6.2

Google

Vitaly
22.01.2018
21:53:42
решилось явным указанием types в конфиге -_-

Ҫѐҏӗѫӑ
23.01.2018
13:10:49
кто там следит, когда 2.7?
много осталось допилить?

D
23.01.2018
13:13:05
Неделю назад rc был, думаю в течение 1-2 недель выкатят

Ҫѐҏӗѫӑ
23.01.2018
13:14:44
вообще обещали январь

Aleserche
23.01.2018
13:26:27
А что-то принципиально новое там будет?

D
23.01.2018
13:29:55
Таплы фиксированного размера, например

Admin
ERROR: S client not available

Aleserche
23.01.2018
13:33:24
Типа структур?

Ilya
23.01.2018
13:34:32
типа кортежей в питоне?
накой они?
это всё обновление?

andretshurotshka?❄️кде
23.01.2018
13:35:52

D
23.01.2018
13:35:55
Ну почитайте сами, я же не буду все пересказывать
Там немного

andretshurotshka?❄️кде
23.01.2018
13:36:26
https://blogs.msdn.microsoft.com/typescript/2018/01/17/announcing-typescript-2-7-rc/

Mike
23.01.2018
17:01:16
strictPropertyInitialization офигенская штука
давно ждал, нереально полезно

Maksim
23.01.2018
17:14:02
при обновлении TS до 2.6.x появилось такое предупреждение при использовании RxJs
https://i.imgur.com/s5bBqPW.png

Google

Maksim
23.01.2018
17:14:25
с этим как бороться?

D
23.01.2018
17:29:42
В смысле как? Тебе же прямо пишут что не так
Ты уверен, что это обновление тс повлияло, а не новые тайпинги?

Maksim
23.01.2018
17:30:40
Вообще у меня в конфиге strict: true, а в TS 2.6 появилась настройка "strictFunctionTypes"
Ее в этом случае лучше отключить или есть какой-то способ обойти эту проверку? (через хитрый as в параметрах или еще как-то)

D
23.01.2018
17:34:11
Если отключить, то все ок?

Maksim
23.01.2018
17:34:23
да
просто проверка то полезная по сути, поэтому не хочется отключать, но в данном случае она только палки в колеса ставит