
Aleh
06.06.2017
11:35:09
он же вывел
или я не понял

Roman
06.06.2017
11:35:27
не, там не хватало свойств

Google

Roman
06.06.2017
11:35:33
каких именно он не пишет

Aleh
06.06.2017
11:35:38
а, ну он выводит ошибки постепенно, да)

Roman
06.06.2017
11:36:02
пишет что не ассайнбл, это как бы и ежу понятно
приятно, когда заполняешь объект и постепенно видишь какие осталось обязательные свойства заполнить

Aleh
06.06.2017
11:36:37
я не очень знаю как работает эта проверка, но по ощущениям оно проверяет асайнбл ли оно, если находит хоть одну причину, то дальше не проверяет и выводит ее
ты исправляешь первую причину, он тебе вторую

Олег
06.06.2017
11:37:45
вопросы к иде чтоли

Roman
06.06.2017
11:38:06

Aleh
06.06.2017
11:38:15
скорее tsserver
он чуть по-другому отдает, но суть таже

Roman
06.06.2017
11:41:03
да, я эту же ошибку смотрел в tsc, все то же

Aleh
06.06.2017
11:41:20
короче, он пишет первое поле, в котором ошибка
исправишь его, напишет следующее

Google

Олег
06.06.2017
11:42:16
ты хочешь сказать в этом нет логики

Aleh
06.06.2017
11:42:38
это возможно не так удобно, как если бы он вывел все ошибки сразу

Artur
06.06.2017
11:43:30

Aleh
06.06.2017
11:43:44
ну да, есть вероятность, что вывести все поля вообще невозможно

Artur
06.06.2017
11:43:56

Roman
06.06.2017
11:43:59
ладно, с этим можно жить, но что нельзя юнион проверить это пиздец, извините

Aleh
06.06.2017
11:44:08

Artur
06.06.2017
11:44:17

Aleh
06.06.2017
11:44:35
я не сказать, что долго искал, но сходу не нашел

Artur
06.06.2017
11:44:38
приходится guard function использовать

Roman
06.06.2017
11:45:20

Aleh
06.06.2017
11:45:33
для стейта? О.о

Artur
06.06.2017
11:45:33

Aleh
06.06.2017
11:45:38
и у меня)
я помню буквально пару мест, где так делал и все там, где api может отдать разные структуры

Artur
06.06.2017
11:46:25
У меня есть буквально несколько компонентов, у которых пропсы такие, и для них я написал функции и всё

Roman
06.06.2017
11:46:45
ну вот вам тогда реакт от микрософта https://github.com/Microsoft/BotFramework-WebChat/blob/master/src/Store.ts#L194

Aleh
06.06.2017
11:47:02

Roman
06.06.2017
11:47:04
но тут проверка на type

Google

Roman
06.06.2017
11:47:09
да

Aleh
06.06.2017
11:47:16
такое вот много у меня в редаксах
оч удобно

Artur
06.06.2017
11:48:23
type получается везде есть

Aleh
06.06.2017
11:48:31
ага
если кто найдет issue с этим union и if, то кидайте

Artur
06.06.2017
11:50:23
не нашлось
Наверняка где то в комментах

Roman
06.06.2017
12:02:39
а как вы храните асинхронные сущности в стейте, вот так?
это же некорректно
хотя инит стейт вероятно должен быть совсем пустым и это ок

Aleh
06.06.2017
12:08:01
не совсем понял проблему

Roman
06.06.2017
12:09:01
получается просто может не быть ни ошибки ни данных. Что при условии что запрос был запущен 100% некорректно. Но initialState может быть пустым, да

Aleh
06.06.2017
12:10:08
все равно не понимаю)

Roman
06.06.2017
12:10:53
юнион просто предполагает хотя бы одно из списка, опциональные свойства этого не дают, я про это
если оказывается что работать с юнионами неудобно

Aleh
06.06.2017
12:11:08
а, так у тебя не может быть пустого объекта?
просто это ж такая достаточно приватная деталь твоего стейта, ты ж не будешь по всему приложению мазать логику if(state.error)

Roman
06.06.2017
12:12:43

Google

Aleh
06.06.2017
12:12:50
в тс эта проверка просто выглядит еще ужаснее, от чего еще меньше желания ее делать в разных местах и вонизкает желание сделать одну обертку
https://github.com/prettier/prettier/releases/tag/1.4.0
ts завезли

Ҫѐҏӗѫӑ
06.06.2017
12:29:09
cc @vasyayorkin
алсо
> the next typescript nightly will have import() support with --modules esnext

Artur
06.06.2017
12:39:41
yeah

Aleh
06.06.2017
12:41:03

Ҫѐҏӗѫӑ
06.06.2017
12:41:59
мб уже в найтли

Admin
ERROR: S client not available

Ҫѐҏӗѫӑ
06.06.2017
12:42:19
я еще не проверял

Aleh
06.06.2017
12:42:53
https://github.com/Microsoft/TypeScript/pull/16264 ?
https://github.com/Microsoft/TypeScript/issues/12364#issuecomment-306358147

Ҫѐҏӗѫӑ
06.06.2017
12:44:31
печаль

Aleh
06.06.2017
12:45:28
влили, все ок
влили, ревертнули и опять влили)

Ҫѐҏӗѫӑ
06.06.2017
12:47:02
https://github.com/Microsoft/TypeScript/pull/16281
ага

Aleh
06.06.2017
12:47:51
в 2.4 в tsserver еще всякой годноты напихают для рефакторингов

Max
06.06.2017
16:40:11
чуваки а как мне лучше расширить то что возвращает createAction?

Google

Max
06.06.2017
16:40:18
мне кажется такой вариант записи удобныым
createAction(…) as MyPayload?
хотя хер с ним не буду усложнять

Nikolay
06.06.2017
18:13:45
а есть что то, что может мне создать заготовку для нескольких пакетов с поддержкой ts и сборкой на rollup?
все в одном репе
вообще есть кто с монорепами работал?

Дмитрий
07.06.2017
07:06:10
Я)
Шесть пакетов в данный момент в одной репе
Кстати обнаружил связанный с ними баг в пятом нпм, меня тут прям эмоции переполняют по этому поводу
npm 5.0.3 при установке любого пакета в один из реп тщательно сносит к чертям все модули изо всех остальных ?

Aleh
07.06.2017
07:19:21
Зато быстро)

Дмитрий
07.06.2017
07:19:34
Даа ?
600 пакетов сносит секунд за 8)

Сергей
07.06.2017
09:19:50

Nikolay
07.06.2017
10:36:30

from
07.06.2017
11:07:20
если можешь описать проблему и как снэпшоты ее решают, был бы благодарен
ну я не то чтобы прямо всё продумал, но кейс такой —
передаю я скажем в компонент два свойства
<SomeComponent name="hello" color="black" />
а в компоненте соответственно использую props.name и props.color
А потом решил, что хочу ещё одно свойство.
Написал <SomeComponent name="hello" color="black" quantity={20} />,
в компоненте тоже использовал props.quantity....
...и блин надо лезть в types и туда тоже дописывать quantity
Это часто легко, но бывает муторно.
А со снэпшотами меня бы кто-нибудь (ide может) спросил "обновить типы?" и я бы нажал "естессн" и всё.
Кстати, пока писал, вспомнил что на докладе про reason чен вроде говорил, что там как раз так и происходит

Ҫѐҏӗѫӑ
07.06.2017
16:07:22
ВНЕЗАПНО https://twitter.com/chicoxyzzy/status/872485076260540419

Сергей
07.06.2017
16:08:23

Ҫѐҏӗѫӑ
07.06.2017
16:08:29
?
шта?