vue在更新数据了数据但是没有更新视图的时候就需要使用set方法了。
大家在开发过程中会遇到一种情况:当生成vue实例后,再次给数据赋值时,有时候并不会自动更新到视图上去。也就是 如果在实例创建之后添加新的属性到实例上,它不会触发视图更新。
造成这种原因是因为受 ES5 的限制,Vue.js 不能检测到对象属性的添加或删除。因为 Vue.js 在初始化实例时将属性转为 getter/setter,所以 属性必须在 data 对象上才能让 Vue.js 转换它,才能让它是响应的。
所以综上所述如果方法里面单纯的更新数组 Array 的话,要使用 Vue.set();如果方法里面同时有数组和对象的更新,直接操作 data 即可。