set为解决Vue2中双向数据绑定失效而生,所以只需要关注什么时候双向数据绑定会失效,用上就可以了。
以下情况Vue的双向绑定会失效(由于JavaScript的限制,Vue2不能检测对象属性的添加或删除):
1、改变数组的长度时
2、改变数组中的属性时
3、通过索引值修改数组时
4、动态给对象添加属性时
凡是发现双向绑定失效,则是可能Vue2无法监听到,因此可以使用$set方法去绑定。
使用方法:
1.修改数组
this.$set(Array, index, newValue)
2.修改对象
this.$set(Object, key, value)