给变量重复赋值,Vue 监测不到数据变化。这个时候,双向绑定就失效了。
1、为什么要用set?
在vue中,并不是任何时候数据都是双向绑定的。
在官方文档中,有这样一段话,如下:
从文档得知,当数据没有被双向绑定的时候,我们就需要使用set了
2、set用法
解决数据没有被双向绑定我们可以使用 vm.$set 实例方法,该方法是全局方法 Vue.set 的一个别名。
this.$set(原对象, 索引值, 需要赋的值)
//例如要给 this.form 赋值
this.$set(this, 'form', 需要赋的值)
3、什么时候使用 $set?
$set为解决双向绑定失效而生,所以当双向绑定失效的时候使用就可以了。
文档地址:API — Vue.js