小程序收藏功能

<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

})
}
},
 
 
原文地址:https://www.cnblogs.com/hucuie/p/11352120.html