采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
数组监听这里,如果这样写依然是监听不到的啊。 data.nums.push({name: 100}) data.nums[3].name = 20
push一个对象的时候,可以先将这个对象用Object.defineProperty包装一下
然后 : data.nums.push(set({}, 'name', 100));
再改动name的值得时候,setter就会有响应
data.nums[3].name = 20;
不知道我这么理解有问题没有,期望老师给指点一二。
第二种方式肯定不行的。
第一种方式案例说应该可以,你调试一下下图这个方法,是不是被执行了?
第一种方式确实是可以的,我疑惑的是第一种方式赋值之后用第二种方式就无法监听了,那Vue是如果监听第二种方式的呢?
Vue2.x 应该也无法监听第二种方式。
第二种需要vue的set了吧,直接修改数组的数据需要set一下。
登录后可查看更多问答,登录/注册
面向1-3年前端的框架及项目面试“刚需内容”
4.2k 1
2.7k 11
1.3k 11
1.4k 11