
adam
05.06.2016
13:19:31

Vasiliy
05.06.2016
13:26:10
https://github.com/DefinitelyTyped/DefinitelyTyped/blob/master/react/react-global.d.ts
https://github.com/DefinitelyTyped/DefinitelyTyped/blob/master/react/react.d.ts#L2341
^ кто-нибудь может в 2-х словах объяснить что тут происходит?
вроде прочитал про модули и неймспейсы еще раз и вот это тоже https://www.typescriptlang.org/docs/handbook/writing-declaration-files.html
все равно пока не понял назначение react-global.d.ts

Google

Vasiliy
05.06.2016
13:27:35
типа чтобы можно было везде писать React и ReactDOM и ничего не импортировать самому?

Aleh
05.06.2016
13:27:44
ну, с react-global React объявлен во всех файлах как React
ага

Vasiliy
05.06.2016
13:28:18
ок, ладно, надо пробовать
хм
https://asciinema.org/a/avs85bkrm1r4tcxw75kun9vj7
как так может быть?
т.е.
typings search --name react-addons-create-fragment
react-addons-create-fragment dt http://facebook.github.io/react/ 1 2016-03-16T15:55:26.000Z
но
❯ typings install dt~react-addons-create-fragment --global --save
typings ERR! message Unable to find "dt~react-addons-create-fragment" ("npm") in the registry. Did you want to try searching another source? Also, if you want contribute these typings, please h

Gordey
05.06.2016
13:45:14
в npm’e почему то ищет

Vasiliy
05.06.2016
13:46:09
переустановил и стало искать там где надо
похоже была страрая версия просто
мда, а для бетки второго вебпака тайпингов пока нет (:

Aleh
05.06.2016
14:06:00
а ты хотел webpack.config на ts писать?

Google

Vasiliy
05.06.2016
14:06:04
я просто по полной заморочился сейчас да

Aleh
05.06.2016
14:06:05
о.о

Vasiliy
05.06.2016
14:06:27
ну есть же такие штуки https://github.com/js-dxtools/webpack-validator
почему бы тогда вместо этого его на ts не писать, и помнить ничего не нужно

Aleh
05.06.2016
14:07:44
это да, я согласен. Я вообще еще второй webpack не смотрел, знаю только, что es6 modules завезли и все(

Gordey
05.06.2016
14:08:06
чуваки уже в продакшене его катают и вроде ничо

Aleh
05.06.2016
14:08:27
да я вообще не понимаю, почему они просто слово beta не уберут из версии
2.1 уже блин
а все beta)

Gordey
05.06.2016
14:09:54
мб потом пихнут в 2.2 ломающие изменения
опасно )

Vasiliy
05.06.2016
14:10:35
сейчас попробую законтрибьютить тайпинги, но я много чего не знаю, но хотя бы начну, заодно разберусь как писать их
как вообще контрибьютить туда? кто-нибудь уже это делал?)

Gordey
05.06.2016
14:11:02
может они стараются доки дописать, а то у них до сих с этим весьма печально
пул реквест и поехал, как еще?)
форкаешь, правишь, пушишь и pr

Aleh
05.06.2016
14:13:51
так вроде beta это для стабильного api
короче, не ясно
может мое терпение лопнет и я сяду, да переведу на webpack2 :)

Vasiliy
05.06.2016
14:16:24
о, https://github.com/typings/typings/blob/master/docs/faq.md#writing-typings-definitions,
https://github.com/typings/generator-typings#how-to-write-typings
не, мне пока лень в это въезжать

Google

Vasiliy
05.06.2016
14:38:15
т.е. это вполне норм практика создавать vendor.d.ts и там описывать какие-то свои самые примитивные типы ?
ну и reference не забыть на него добавить

Aleh
05.06.2016
14:40:11
свои?

Vasiliy
05.06.2016
14:40:26
ну если нет тайпингов для пакета
и я мигрирую с js на ts и мне нужно по-быстрому убрать ошибки

Aleh
05.06.2016
14:40:46
а, я просто в корне src добавляю vendor-name.d.ts
около js соответственно тоже d.ts

Vasiliy
05.06.2016
14:46:03
destructuring оч странно выглядит(
({ foo }: { foo: boolean }): string =>
два раза одно и тоже

andretshurotshka?❄️кде
05.06.2016
14:49:00
type Foo = { foo: boolean }
({ foo }: Foo)

Vasiliy
05.06.2016
14:51:51
ну да, вообще не проблема, особенно в моем случае сейчас)
понятно, что так ({ foo: boolean }) => не получилось бы реализовать
я так понял что для ноды пользоваться надо этим https://github.com/TypeStrong/ts-node
а не этим https://github.com/theblacksmith/typescript-require, или нет?

Aleh
05.06.2016
15:27:36
ts-node лучше, но у меня свой скрипт для этого

Gordey
05.06.2016
15:37:50
а для unit tst в ts ничего особенного нет? или тут скорее при миграции меньше писать просто

Aleh
05.06.2016
16:00:22
я моку юзаю
ну, т.е. ничего особенного нет)
mocha + cucumber у нас

Vasiliy
05.06.2016
18:34:32
я для начала пока тупо сделал в корне проекта (в ./src) globals.d.ts и там описываю свои типы, а недостающие типы пакетов описываю в vendors.d.ts

Google

Viacheslav
05.06.2016
19:16:41
кстати, кто как импортит css?

Vasiliy
05.06.2016
19:25:24
const styles = require(‘./styles’) :D
с css-modules

Viacheslav
05.06.2016
19:26:55
да, я тоже так
но попахивает

Vasiliy
05.06.2016
19:29:01
я видел такое еще https://github.com/Quramy/typed-css-modules
вот тут https://github.com/Quramy/typescript-css-modules-demo

Artur
05.06.2016
19:34:14
Я как раз думал на эту тему.
Чтобы выкинуть транспилер? Но зачем?
Кстати, тут был вопрос про контрибьютинг в typings. Кто-то разобрался как это делать? А то я хотел пару модулей залить но не нашел с ходу, как и куда. Везде старый дэтээс всплывает на гитхабе.

Aleh
05.06.2016
19:42:31

Vasiliy
05.06.2016
19:43:10
например, чтобы писать
"scripts": {
"start": "node src/server/boot.js",
boot.js:
require('ts-node').register({ project: './tsconfig.json', });
require('./run.tsx');

Aleh
05.06.2016
19:43:58
долго стартовать будет же

Vasiliy
05.06.2016
19:43:59
а там уже express на ноде

Artur
05.06.2016
19:44:15

Aleh
05.06.2016
19:44:18
т.е. перезапуск дольше, при большом проекте может вполне минуту висеть

Artur
05.06.2016
19:44:35

Google

Vasiliy
05.06.2016
19:45:01
ну я просто не знаю как по-другому
поэтому)

Artur
05.06.2016
19:45:10
Аааа

Aleh
05.06.2016
19:45:14

Artur
05.06.2016
19:45:40
tsc -w

Aleh
05.06.2016
19:46:23
гит засорять, фе
диффы потом в PR смотреть лишние)

Vasiliy
05.06.2016
19:46:44
какие альтернативы?

Aleh
05.06.2016
19:47:12

Artur
05.06.2016
19:47:51