老师,我有个地方不大明白

来源:4-6 vue如何监听数组变化

催晚

2020-08-05

数组监听这里,如果这样写依然是监听不到的啊。
data.nums.push({name: 100})
data.nums[3].name = 20

写回答

2回答

mrmooc

2021-03-04

push一个对象的时候,可以先将这个对象用Object.defineProperty包装一下

然后 : data.nums.push(set({}, 'name', 100));

再改动name的值得时候,setter就会有响应

data.nums[3].name = 20;

不知道我这么理解有问题没有,期望老师给指点一二。

0
0

双越

2020-08-05

第二种方式肯定不行的。

第一种方式案例说应该可以,你调试一下下图这个方法,是不是被执行了?

//img1.sycdn.imooc.com/szimg/5f29fc7609f577b112140398.jpg

0
3
慕粉3871079
回复
双越
第二种需要vue的set了吧,直接修改数组的数据需要set一下。
2021-02-20
共3条回复

2024版 前端框架及项目面试 聚焦Vue3/React/Webpack

面向1-3年前端的框架及项目面试“刚需内容”

4663 学习 · 1644 问题

查看课程