
localvoid
13.01.2017
09:39:38
да вон на npm'е уже лежит 16-alpha

Andrey
13.01.2017
09:40:08
да, думаю попробовать на днях

Adamtsov
13.01.2017
11:40:38
?

Iaroslav ¯\_(ツ)_/¯
13.01.2017
12:29:27
потому что точка

Google

Sergey
13.01.2017
12:29:53
да, на нее ругаеться вебпак, а как без нее?

Andrew
13.01.2017
12:30:18
в первом случае, в качестве имени свойства берется имя переменной, а во втором случае непонятно как обозвать свойство объекта

Aleksey
13.01.2017
12:30:25
плохо выучил es2015 shorthand запись
значение переменной приводится к строке через .toString и назначается ключом
в первом же случае ключ всегда a
a
а, проглядел. оно у тебя, вообще, собирается?

Sergey
13.01.2017
12:32:51
+
чет не понимаю, как записать?
пример можно

Aleksey
13.01.2017
12:33:20
смотря что ты хочешь получить

Sergey
13.01.2017
12:33:20
так лучше доходит

? ethorz
13.01.2017
12:33:40
...state.filter_checked[filter.name]
?

Google

Aleksey
13.01.2017
12:34:07
аналогом верхней записи будет
a: state.filter_checked[filter.name]
строка

Sergey
13.01.2017
12:37:18
в a = лежать объекты,
a: state.filter_checked[filter.name]
не катит
мне нужно диструктизировать - типо ...
но ... не работает
с последним уровнем

Aleksey
13.01.2017
12:38:10
не уловил. flatten надо сделать?

Sergey
13.01.2017
12:38:12
сейчас простой пример покажу
поэтому записть
a: state.filter_checked[filter.name]
не катит

Aleksey
13.01.2017
12:40:52
а получить-то ты что хочешь из b
?

Sergey
13.01.2017
12:41:37
вообщем... нужно обновить состояние добавив новое значение, при этом сохранив старые

Aleksey
13.01.2017
12:43:03
spread operator. уже подсказывали

Sergey
13.01.2017
12:43:13
... ?

Aleksey
13.01.2017
12:43:19
ну да

Sergey
13.01.2017
12:43:32
не работает с объектами на последних уровнях

Aleksey
13.01.2017
12:43:32
внизу же ты его пользуешь

Sergey
13.01.2017
12:43:41
это не последний уровень

Dmitrii
13.01.2017
12:43:43
если в setState передать одно свойство, он же и обновит только одно, остальные останутся

Aleksey
13.01.2017
12:43:50
ну, spread первый уровень разворачивает

Dmitrii
13.01.2017
12:43:54
не надо все старые передавать

Google

Sergey
13.01.2017
12:44:03
?
как это)

Aleksey
13.01.2017
12:44:17
у него структуру вложенные

Dmitrii
13.01.2017
12:44:30
setState({a: 1}) изменит только a в state

Sergey
13.01.2017
12:44:35
да, и все - объекты

Dmitrii
13.01.2017
12:44:38
остальные свойства будут не тронутые
а для вложенных да через spread
или Object.assign()

Sergey
13.01.2017
12:45:05
посмотри еще раз на мою структуру

Aleksey
13.01.2017
12:45:44
так в 197 строке у тебя спрэда нет
сделай как в 203й у тебя же

? ethorz
13.01.2017
12:46:38

Дмитрий
13.01.2017
12:46:43
Адок конечно

Aleksey
13.01.2017
12:46:50
ага )

Sergey
13.01.2017
12:47:28
сейчас покажу
остаеться только новое

Aleksey
13.01.2017
12:49:21
а ты что ожидаешь?

? ethorz
13.01.2017
12:49:39
наверное добавление нового значения

Google

? ethorz
13.01.2017
12:49:44
чтобы и старое сохранялось

Sergey
13.01.2017
12:49:49

Aleksey
13.01.2017
12:49:50
нормально )

Admin
ERROR: S client not available

Aleksey
13.01.2017
12:49:57
это всегда массив?

Sergey
13.01.2017
12:50:06
нет - объект

? ethorz
13.01.2017
12:50:53
Object.Assign

Sergey
13.01.2017
12:51:00
как вариант

Aleksey
13.01.2017
12:51:08
lodash/merge
assign перетрет поле pay так же как и спрэд
)

? ethorz
13.01.2017
12:52:10
хы

Aleksey
13.01.2017
12:52:18
возьми за правило в Object.assign первый аргумент всегда делать {}

Sergey
13.01.2017
12:52:19
:В

Aleksey
13.01.2017
12:52:32
иначе словишь такие замечательные трудноотлаживаемые грабли когда-нибудь

? ethorz
13.01.2017
12:52:40
Object.assign({}, obj)

Sergey
13.01.2017
12:52:45
не помогло

? ethorz
13.01.2017
12:53:09
но тебе нужно туда еще исходный стейт

Aleksey
13.01.2017
12:53:24
освой timm/immutable.js или хотя бы lodash/(assign|extend|merge) пригодится

? ethorz
13.01.2017
12:53:30
Object.assign({}, obj, obj1)

Google

Aleksey
13.01.2017
12:54:05
ну и структуры лучше выбирать попроще если решил нативными средствами языка обойтись

Sergey
13.01.2017
12:54:24
вот этот вариант работает как надо. Но это же не красиво

? ethorz
13.01.2017
12:54:54
либо оставляй 1 вариант

Sergey
13.01.2017
12:55:16
а что такое obj, и obj1

? ethorz
13.01.2017
12:55:40
obj - исходный стейт, obj1 - то, что ты добавляешь

Дмитрий
13.01.2017
12:56:23
Есть N редюсеров, условно
const r1 = (state, payload) => state + payload
const r2 = (state, payload) => state + 2
const r3 = (state, payload) => state + payload + 10
Нужно их применить к одному state последовательно. То есть для каждого из них state— это результат выполнения предыдущего редюсера
Мне кажется, или обычный compose тут не подойдет? Потеряет второй аргумент
Я написал такой compose в пару строк, но всё же не покидает ощущение, что это должно быть уже сделано

Aleksey
13.01.2017
12:57:00
lodash/flow

Дмитрий
13.01.2017
12:57:33
Ну я про него в том числе

? ethorz
13.01.2017
12:57:42
нет, все не так