
Kelin
27.08.2017
23:53:23
и, кстати, у тебя неправильный вид
когда человек такое пишет

Google

Kelin
27.08.2017
23:54:19
ну как бы, даже комментировать нет смысла

Illya
27.08.2017
23:59:48
@reeei http://jsbin.com/pahogivece/1/edit?html,js,output
этот вариант гораздо изящнее
вся магия в 54 строчке :)

Kelin
28.08.2017
00:00:28
вот смотри
денис
markers.find(({ id }) => id === activeMarkerId)
find(markers, { id: activeMarketId })
разве не красиво?

Illya
28.08.2017
00:00:55
if (oldFormData === newFormData) {
this.$store.commit('updateCurrentMarker', newFormData);
}
как вынести мозг новичку :)
если данные идентичны - вызываем коммит
фак

Roman
28.08.2017
00:03:51

Illya
28.08.2017
00:03:51
это старая версия

Google

Roman
28.08.2017
00:03:52
ток не работает

Illya
28.08.2017
00:04:13
http://jsbin.com/noselozico/1/edit?html,js,output
вот

Roman
28.08.2017
00:05:17

Illya
28.08.2017
00:05:27
в смысле?
зачем там vue.seT?
для души

Roman
28.08.2017
00:05:43
и json.parse

Illya
28.08.2017
00:05:44
там сойдет и markser[markerIdx]
а вот json.parse - stringify который везде надо заменить на клонирование объекта там неспроста
если мы не склонируем объект - то получим внутри вьюкса инстанс, привязанный к текущей форме
в джаваскрипте объекты по ссылке передаются
и да - Object.assign не клонирует вложенные объекты ;)

Kelin
28.08.2017
00:08:22

Illya
28.08.2017
00:08:29
ключ к понимаю этого кода - знание что мы не можем делать дип вотч на компьютед проперти :)

Roman
28.08.2017
00:08:53

Illya
28.08.2017
00:09:21
это последняя проблема на пути к написанию этого кода )

Kelin
28.08.2017
00:09:59
там же есть флаг deep

Illya
28.08.2017
00:10:25
это не поможет )

Kelin
28.08.2017
00:10:53
вложенность больше 1 или что?

Google

Illya
28.08.2017
00:10:59
нет

Kelin
28.08.2017
00:11:08
я просто не смотрел, что там

Illya
28.08.2017
00:11:09
потому что жизнь прекрасна и удивительна :)
єто в принципе во вью, не в примере

Roman
28.08.2017
00:11:24
Если для такой якобы простой операции надо вот столько всего и непонятные watchи то это точно не простой случай и о нем надо писать. хотя в гугле все не то

Illya
28.08.2017
00:12:25
сколько всего?
ну и более того: напишите

Roman
28.08.2017
00:13:10
ну может на деле не много. но достаточно непростые вещи используются

Illya
28.08.2017
00:14:21
вы всегда можете разобраться и написать
так, время пи на часах
пора чуть вздремнуть

Kelin
28.08.2017
00:15:13
good night

Roman
28.08.2017
00:15:22
@xanf_ua ладно спасибо ) будем разбиратся с этим...

Kelin
28.08.2017
00:15:38
?

Illya
28.08.2017
00:18:27
не за что
когда охренеете с 54-57 строк дайте знать ;)
написанное там на первый взгляд не имеет ни малейшего смысла

Kelin
28.08.2017
00:19:23
та мне-то что, я сам уже таких экспериментов миллион понаделал в свое время

Illya
28.08.2017
00:19:34
я не вам )

Kelin
28.08.2017
00:20:06
на вы, я подумал, что обоим)

Google

Roman
28.08.2017
00:20:53

Illya
28.08.2017
00:21:14
угу
и если они равны то отправляем в стору

Kelin
28.08.2017
00:23:19
ну-ка что там, мне самому интересно

Illya
28.08.2017
00:23:48
@kelin2025 для тебя вот пример :)
http://jsbin.com/jaxejayawa/1/edit?html,js,output
обрати внимание как алерт срабатівает на изменение 1 поля (от которого зависит компьютед test)

Admin
ERROR: S client not available

Illya
28.08.2017
00:24:17
и не срабатывает на изменение поля test.data
хотя тест вотчится с deep: true

Kelin
28.08.2017
00:25:36
обратил

Roman
28.08.2017
00:25:45
эм. так мы вотчим же там 2 инпут да?

Illya
28.08.2017
00:26:46
Для меня оно ожидаемо, для новичков может быть сюрприз.

Kelin
28.08.2017
00:27:44
ну я с этим столкнулся где-то полгода назад
но, с deep: true по задумке должно работать

Roman
28.08.2017
00:31:01
@xanf_ua у меня с этим json.parse
Unexpected token u in JSON at position 0 вот такое чет..

Illya
28.08.2017
00:31:31
Значит у вас начальное значение undefined ;)

Kelin
28.08.2017
00:31:37
@xanf_ua можно было даже без вложенности
http://jsbin.com/giyazezanu/1/edit?html,js,output

Roman
28.08.2017
00:31:58
начальное значение чего?

Google

Illya
28.08.2017
00:32:31
Того что вы пытаетесь склонировать

Roman
28.08.2017
00:32:57
ну так правильно. я когда по роутам перехожу у меня этот id и должен быть id маркера

Illya
28.08.2017
00:33:01
Клонирование на parse stringify это для бедных :)

Kelin
28.08.2017
00:33:54
http://jsbin.com/jadujedeji/1/edit?html,js,output
Потому что вот

Roman
28.08.2017
00:34:07
эх лодаш..

Kelin
28.08.2017
00:34:26

Roman
28.08.2017
00:35:06

Illya
28.08.2017
00:35:09
Вообще не поэтому

Roman
28.08.2017
00:35:31
я пока хз в чем разница ?

Kelin
28.08.2017
00:35:48

Illya
28.08.2017
00:35:56
Нет
Вернее не так - у вас да
Для простого объекта

Roman
28.08.2017
00:36:29
ну вообще ошибка вот в этом
handler(newValue) {
this.form = JSON.parse(JSON.stringify(newValue));
},

Illya
28.08.2017
00:36:45
А вот для вложенного не сработает
У нас же сеттер не вызывается