1、不要 每次收藏都会进行刷新页面
2、只是收藏图标进行刷新改变即可,不需要整个页面进行刷新
html中
<view class="goodsItem" v-for="(item,index) in list" :key="index">
<-- item.isColl == 1 是收藏, item.isColl == 0 是未收藏-->
<image :src="item.isColl==1?'../../../../static/like.png':'../../../../static/like2.png'"
class="likeImg" @click.stop="addCollection(item.id,index)"></image>
</view>
javascript中,局部刷新,改变图标
addCollection(id,index) {
var that = this;
this.httpClient.post('ouColi', {
userId: this.userId
}).then(res => {
uni.showToast({
title: '操作成功',
duration: 500
});
this.list.forEach((item,i) => {
if(index == i){
if(item.isColl == 0){
item.isColl = 1
}else {
item.isColl = 0
}
}
});
})
},
javascript中,局部刷新,从数组中移除特定下标的元素
addCollection(id,index) {
var that=this;
this.httpClient.post('ousColi',{userId: this.userId}).then(res => {
uni.showToast({
title: '操作成功',
duration: 500
});
this.list.splice(index, 1);
})
},