Задать вопрос
dicem
@dicem

Как обновить выдачу v-for во Vue?


Делаю редактор квадратных карт на основе обычного массива.
Запилил следующее, на верхней панели выбираете тип блока который будет размещаться и кликаете по карте в центре, однако после клика выдача массива при помощи v-for не обновляется, хотя в консоли видно, что массив обновился.

Как это фиксить? Прошу помочь.
  • Вопрос задан
  • 836 просмотров
Подписаться 1 Простой 2 комментария
Решения вопроса 1
0xD34F
@0xD34F Куратор тега Vue.js
Документацию всё-таки следует читать:

Vue cannot detect the following changes to an array <...> When you directly set an item with the index

Соответственно, вместо

this.terain[x][y] = Number(this.cursorBlock)

пусть будет

this.$set(this.terain[x], y, +this.cursorBlock);

// или

this.terain[x].splice(y, 1, this.cursorBlock | 0);
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы