比如:
a0 = 1
到
a0 = 2
vue无法检测二维数组。。不过你按照vue官方提供的方法去写
可以更新
Vue.set( target, key, value )
vue无法检测二维数组,可以采用整体重新赋值的思路
let oldArr = this.yourArr;
let newArr = oldArr.slice(0); //克隆数组
newArr[0] = newValue; //改变
this.yourArr = newArr; //整体重新赋值
用 watch 应该就行吧,你可以看下,连 depp: true
都不用
<template>
<div class="activeManage">
<input type="text" v-model="arr[0][0]">
</div>
</template>
<script>
export default {
data() {
return {
arr: [[1, 2, 3, 4]]
}
},
watch: {
arr() {
console.log('Change');
}
}
}
</script>
9 回答1.7k 阅读✓ 已解决
6 回答944 阅读
3 回答1.3k 阅读✓ 已解决
4 回答949 阅读✓ 已解决
2 回答1.1k 阅读✓ 已解决
3 回答856 阅读
3 回答1.3k 阅读✓ 已解决
建议转换为对象嵌套数组的形式,因为vue是利用
Object.definedPrototy
来监听数据变化的,但是数组没有key值并不适用于这个方法