<div id="app">
<div v-for="(item, index) in arr" :key="index" @click="myClick(index)">{{ item }}</div>
</div>
<script>
var app = new Vue({
el: '#app',
data: {
arr: [1, 2, 3]
},
methods: {
myClick(index) {
console.log(index, '执行');
this.$set(this.arr, index, 0)
// this.arr[index] = 0
}
},
mounted() {
// this.arr[2] = 4
// this.$set(this.arr, '2', 4)
},
})
</script>
像这种数组如果直接使用下标修改数据的话,视图层是得不到更新的,需要使用vue内部提供的$set方法才能使得通过下标该数据让视图层得到更新!