首页 > 开发 > JS > 正文

vue.js 多维数组如何监听数据变化?

2017-09-05 05:51:30  来源:网友分享

假如新建一个 vue对象,其中的data 的数据是这样的:

{    menus:[        {            change: 0,            ...        }                {            change: 0,            ...        }                {            change: 1,            ...        }    ]}

我想要监听 menus 数组下面每一项 的 change发生变化,则执行相对应的操作,能做到吗?

解决方案

如果想要监听数组元素的变化并映射到数组的watch函数里 建议使用 set 函数

watch: {    menus(val) {        console.log(val)    }}

更新menus数组时不能直接用下标的方式
而是用这种方式

this.$set(this.menus, '0.change', 1)