mpvue object中的数组变化后没有触发视图更新

dsekswqp  于 3个月前  发布在  其他
关注(0)|答案(4)|浏览(72)

[扼要问题描述]

data中属性
object:{
list: []
}

当this.object.list.push(1)时(splice等同理) 视图不会刷新

mpvue 版本号:
[mpvue@2.0.5]

最小化复现代码:
Add object.list item

object.list {{item}}
Add list item

list item {{item}}

问题复现步骤:
运行代码后 分别点两个按钮就知道了

截图或动态图:

zour9fqk

zour9fqk1#

不知道是不是微信更新导致的, 之前运行的好好的代码突然不行了, 现在补救方式是每次改变了list时 都要补一句 this.object.list = [...this.object.list], 相当于重新给list赋值,才会触发视图更新, 官方大佬看一下是为什么啊!

2w3kk1z5

2w3kk1z52#

加上这个
this.$forceUpdate()

von4xj4u

von4xj4u3#

更新单个值好像视图不会更新需要改变变量,我也是最近遇到的,希望对你能有帮助

mu0hgdu0

mu0hgdu04#

更新单个值好像视图不会更新需要改变变量,我也是最近遇到的,希望对你能有帮助

对啊 之前代码都没动过 最近突然发现这个bug,是因为微信客户端升级导致的吗? 到处都加this.$forceUpdate() 挺麻烦诶 ,还得去检查一遍之前的代码。

相关问题