商品收藏
1. 页面onShow的时候 加载缓存中的商品收藏的数据
2.判断当前商品是不是被收藏
1. 是 改变页面的图标
3 点击商品收藏按钮
1. 判断该商品是否存在于缓存数组中
2. 已经存在 把该商品删除
3. 没有存在 把商品添加到收藏数组中 存入到缓存中即可
Page({ data: { detSwiper: {}, // 商品是否被收藏 flag: false, },
// 收藏 collect() { let flag = false; // 1 获取缓存中的商品收藏数组 let collect = wx.getStorageSync("collect") || []; // 2 判断该商品是否被收藏过 let index = collect.findIndex(v => v.goods_id === this.data.detSwiper.goods_id); console.log(index); // 3 当index!=-1表示 已经收藏过 if (index !== -1) { // 能找到 已经收藏过了 在数组中删除该商品 collect.splice(index, 1); flag = false; wx.showToast({ title: '取消成功', icon: 'success', mask: true }) } else { // 没有收藏过,就push到detSwiper数组中 collect.push(this.data.detSwiper); flag = true; wx.showToast({ title: '收藏成功', icon: 'success', mask: true }) } // 修改data中的属性 isCollect this.setData({ flag }) // 4 把数组存入到缓存中 wx.setStorageSync('collect', collect); console.log(collect) },
<button open-type="share"> 分享</button> // open-type这个属性是我们小程序封装好的
<button open-type="contact"> 联系客服</button>