Я хотел бы установить скопированный массив с одним измененным объектом с одной мутацией.
Я объясню это в коде:
Компонент имеет массив v-model
, и для изменения объекта по индексу мы должны мутировать все элементы:
computed: {
array: {
get() {
return this.$store.state.array;
},
set(value) {
this.$store.commit('updateArray', value);
},
},
},
onObjectDropped(event) {
// That will mutate array = setter will be called
this.array = [...this.array];
// We take an index of array at which we want to assigne object from 'otherArray'
this.array[index] = this.otherArray[selectedIndex].elements[elementsIndex]
},
Я хотел бы переместить вторую строку из метода onObjectDropped
и добавить ее в первую строку, где мы создаем его копию, чтобы изменить массив только один раз, потому что установщик не модифицирует массив новым значением из другого массива.