mysql实现收藏功能_关于微信小程序收藏功能的实现

这篇文章主要介绍了微信小程序收藏功能的实现代码,基本功能是点击收藏后显示已收藏,在另一个页面出现目前点击收藏的项目。需要的朋友可以参考下

需求

点击收藏后显示已收藏,在另一个页面出现目前点击收藏的项目

a3d12de6ec435f912f98f1ffdcad22a6.gif

需要解决的问题点击收藏后需要显示已收藏,并且文字状态改变

另一个页面如何知道你点击了收藏,并且获得你点击收藏的数据

如何解决?数据状态绑定,并且由状态控制样式(三元运算符)

缓存(setStorageSync,getStorageSync),点击页面设置缓存(数据的id),显示页面获取缓存,通过获得缓存id,将整个数据中的获得的id那一项,取出,放入新的数组

具体实现

wxml

{{isClick?'已收藏':'收藏'}}

点击页面js

Page({

data: {

job: [],

jobList: [],

id: '',

isClick: false,

jobStorage: [],

jobId: ''

},

haveSave(e) {

if (!this.data.isClick == true) {

let jobData = this.data.jobStorage;

jobData.push({

jobid: jobData.length,

id: this.data.job.id

})

wx.setStorageSync('jobData', jobData);//设置缓存

wx.showToast({

title: '已收藏',

});

} else {

wx.showToast({

title: '已取消收藏',

});

}

this.setData({

isClick: !this.data.isClick

})

}

})

显示页面js

import jobList from '../../api/detail'

Page({

data: {

id:'',

job:[],

savejob:[],

},

onLoad: function (options) {

console.log(wx.getStorageSync('jobData'));

let savejob = wx.getStorageSync('jobData')//获得缓存

let index = savejob.length-1;

console.log(savejob[index].id);

let jobid = savejob[index].id

let temp= jobList[jobid] //将获得缓存后匹配的数据放入新的数组

let job= [];

job.push(temp);

this.setData({

id:index,

job: job,

})

},

})

以上就是本文的全部内容,希望对大家的学习有所帮助,更多相关内容请关注PHP中文网!

相关推荐:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值