父子传值不跟新问题

来源:11-4 服务器的 Nginx 配置

qq_文字墨_asEJUX

2020-03-09

老师, 在做这个项目时, 遇到了一个传值问题,在热门商品列表中
// 深拷贝,不改变原数组
this.sortGoodsData = this.listData.slice(0);
这里用了深拷贝, 可是当父组件传来的listData数据发生改变时, sortGoodsData并没有改变, 导致页面没有刷新, 我试着在activated中重新赋值, watch listData的改变重新赋值都没有成功. 这种情况老师怎么解决?

写回答

1回答

Sunday

2020-03-09

你好:

深拷贝的话那么等同于,sortGoodsData 和 listData 是在两块内存地址,两者直接的值并没有相互的影响。也就是 listData 的变化,不会影响到 sortGoodsData 的值。

0
2
Sunday
回复
qq_文字墨_asEJUX
你好: 这里之所有使用深拷贝来保存 datalist。 是因为对于咱们的数据重新排序来说,我们不应该在原始数据之上做操作,被改变的应该是原始数据的拷贝。 所以我们拷贝了一份 datalist。之后所有的所有的排序操作(比如,价格由高到低、销量由高到低)的排序都是在被拷贝出来的数据中进行的,也就是在 sortGoodsData 中进行的。
2020-03-09
共2条回复

混合开发入门 Vue结合Android/iOS开发仿京东项目App

流行的混合开发实战入门,前端和原生开发同学不容错过

1108 学习 · 448 问题

查看课程