в state есть массив , arr [Obj, Obj ... итд].
Когда в mutation присваиваю полю некое значение arr[0].field = 1 , после чего поле всех элементы массива тоже имеют это значение, хотя элементам под другими индексами я его не устанавливал. ?
setArr (state, obj) { for (var i=0;i<10;i++) { if (state.arr[Object.keys(state.arr)[i]].field === undefined) { state.arr[i] = obj break } } }
до утсановки state.arr[0].field === 0 state.arr[1].field === 0 state.arr[2].field === 0 я в commit'e устанавливаю state.arr[0].field = 1 но становится так state.arr[0].field === 1 state.arr[1].field === 1 state.arr[2].field === 1
а что есть в state arr?
Здесь нет магии Vue, это обычный JS. У тебя в массиве во всех ячейках лежит один и тот же объект
Точно !!! Спасибо огромное , чет я затупил.
Обсуждают сегодня