写项目的时候发现了一个bug,就是点编辑的时候,需要选择一个弹框里的数据,选择好后data里的数据更新了,但是页面没有更新。如果先新增一次的话,再点编辑就可以更新。自己最后实在不知道怎么解决了,就百度了一下,看到了这篇文章⬇
第一种情况:就是在初始化的时候没有这个属性,是动态添加的属性。这个时候不会引起vue自动渲染机制。
this.$set(object, key, data);
object:目标对象。key:需要添加的属性名。data:属性值。
第二种情况:在操作数组的时候,要用push 或者 splice 等 可以改变这种方法改变原数组。而不是用下标 this.mydata[0] = '改变的值'。这样也会引起不渲染。
如果情况比较复杂,所有方法都试过了还没有解决,用 v-if 强制重新渲染更新。
版权声明:本文为CSDN博主「派大星1」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/yin_you_yu/article/details/94459696
我的情况是第一种,就是在初始化的时候没有这个属性,是动态添加的属性。因为对是否要初始化属性总是不确定,所以看来还是要先在data里把需要的数据和属性都初始化好,这样比较稳妥,
版权归原作者 weixin_44569565 所有, 如有侵权,请联系我们删除。