vue.set || vue.$set 记录
Vue.set( target, propertyName/index, value )
Vue.set( target, propertyName/index, value )
也可以使用Vue.$set(别名)
主要两个功能:1. 设置数据数组对象元素; 2.向响应式对象添加属性
set 这个方法只能用于data 里面的子数组对象,而不能直接用于data (这个根数据)或 者vue 实例
但是可以使用 Vue.set(vm.someObject, ‘b’, 2)
1. 设置数据数组对象元素;
<div id="div">
<p >{{items}}</p>
</div>
<script>
var vm = new Vue({
el:"#div",
data: {
items: ['a', 'b', 'c']
}
});
Vue.set(vm.items,2,"ling")
</script>
Vue.set(vm.items,2,“ling”)这句话的意思是把vm.items数组下标为2的元素,改为"ling",返回参数为"ling"修改后数组变成[‘a’, ‘b’, ‘ling’]
2.向响应式对象添加属性;
<div id="div">
<p >{{person}}</p>
</div>
<script>
var vm = new Vue({
el:"#div",
data: {
person:{
name:"ling",
job:"engineer"
},
created:function(){
alert(this.person.age)
}
});
Vue.set(vm.person,"age","26")
</script>
Vue.set(vm.person,“age”,“26”)这句话的意思是在vm.person对象中添加"age":"26"这个属性
非响应式方法也无法使用,使用后并不能添加上去
就这样,再见