У меня есть элемент vue.js на моей странице, который отслеживает изменения, внесенные в форму. Это выглядит так:
var changes_applied = [];
var changes_applied_block = new Vue({
name: "ChangesApplied",
el: '#changes-applied',
data: {
items: changes_applied
},
methods: {
remove: function(index) {
changes_applied.splice(index, 1);
}
}
});
Когда изменение обнаруживается, оно помещается в массив changes_applied
и, как и ожидалось, отображается в div «Примененные изменения». Также работают удаления, которые просто вызывают метод remove
для объекта vue.
У меня также есть кнопка «очистить», которая не связана с экземпляром vue, и при ее нажатии она устанавливает источник данных обратно в пустой массив, используя changes_applied = [];
Проблема в том, что после того, как это очищено с помощью кнопки, изменения / дополнения к массиву изменений больше не отображаются в элементе vue - это похоже на то, что элемент vue больше не прикреплен к массиву changes_applied
.
Мне не хватает привязки или чего-то здесь, что должно произойти, или есть «способ vue», чтобы очистить данные vue, не касаясь фактического исходного массива?