本文共 953 字,大约阅读时间需要 3 分钟。
//置顶 async stickHonor(index) { //index为数据当前下标 let obj = this.honorList[index]; const id = obj.id; obj.isStick = 1; console.log(id); const isStick = 1; //置顶状态 const res = await stickStudentHonors({ id,isStick }); //调用接口改变数据状态 //删除之前的位置的数据 this.honorList.splice(index, 1); //在数组下标为0插入数据,每次置顶数据都是在最前面 this.honorList.splice(0, 0, obj); }, //取消置顶 async unstickHonor(index) { //index为数据当前下标 let sum = 0; for (let data of this.honorList) { if (data.isStick == 1) { sum++; } } let obj = this.honorList[index]; const id = obj.id; const isStick = 0; //为不置顶 const res = await stickStudentHonors({ id,isStick }); //调用接口改变数据的状态 obj.isStick = 0; //删除之前的位置的数据 this.honorList.splice(index, 1); //置顶数据下面插入数据,因为sum把之前自己置顶的也算进去,所以sum-1 this.honorList.splice(sum-1, 0, obj); }
因为splice()方法为vue数组的响应式方法,所以会自动刷新数据
转载地址:http://ffviz.baihongyu.com/