Vue中数组的响应式操作
数组的响应式操作
·
在Vue中对数组的响应式操作主要由以下几种:
//********数组的响应式操作方法
//1.push():从最后插入元素
this.nums.push('push','a','b');
//2.pop():删除数值中的最后一个元素
this.nums.pop();
//3.shift():删除数组中的第一个元素
this.nums.shift();
//4.unshift():在数组最前面添加元素
this.nums.unshift('unshift','a','b');
//5.splice():指定位置删除、插入、替换元素。传入三个参数(sta,sec,thi)。
this.nums.splice(1,2);//删除元素时,sta:要删除元素的位置,sec:要删除元素的个数。
this.nums.splice(1,3,'m','n','l')//替换,第一个元素后面的三个元素替换为'm'、'n'和'l'。
this.nums.splice(1,0,'W','Z');//插入元素,在第一个位置后面插入'W'、'Z'。
//6.sort():排序
this.nums.sort();
//7.reverse():将数组内容反转
this.nums.reverse();
而通过数组的下标值进行赋值的操作不是响应式的:
this.nums[0] = 'aaaa';
这种方法修改数组不会引起页面的动态刷新,解决方法有以下两种方式:
//解决方式
//1.splice方法
this.nums.splice(0,1,'aaa');
//2.vue的方法
Vue.set(this.nums,0,'aaa');
能够达到同样的目的。
更多推荐
已为社区贡献4条内容
所有评论(0)