<image src="../../image/exam/shouCang.png" wx:if="{{!iscollected}}" catchtap="handleCollection"></image>
<image src="../../image/exam/shoucangCur.png" wx:if="{{iscollected}}"catchtap="handleCollection" ></image>
js
//收藏函數
data{
iscollected:"fasle";定義收藏的狀態
}
handleCollection:function(){
//圖片切換
var iscollect=!this.data.iscollected;
//更新狀態
this.setData({
iscolleced;
})
}
//條件成功為真的情況下
var title = iscollected ? '收藏成功' : '取消收藏';
wx.showToast({
title: title,
icon: "success",
})
//判斷緩存的狀態還有文章的id判斷是否收藏
var obj = wx.getStorageSync("iscollected");//點擊其他的文章可能沒有緩存,有的話先讀取緩存
obj[this.data.postid]=iscollected;
wx.setStorage({
key: 'iscollected',
data: obj,
success:()=>{
}
})
//頁面加載
onLoad: function (options) {
var posid = options.id;
var that = this;
this.setData({
postid: that.data.postid
})
//根據本地用戶緩存的狀態判斷用戶是否收藏當前的文章;
var storagedetail = wx.getStorageSync("iscollected");
//要是沒有緩存新建一個空對象
if (!storagedetail ){
wx.setStorageSync("iscollected", {});
}
//判斷用戶是否收藏
if (storagedetail[that.data.postid]) {
this.setData({
iscollected:true
})
}else{
this.setData({
iscollected: false
})
}
},