小程序实现收藏分享客服

分享和客服我写的都是最简单得哪中,就是用wx自带的api完成的,分享是
将button得open-type设置为share
客服是将button得open-type设置为contact
下边是代码
html部分

`<view class="cts">
    <text class="iconfont icon-kefu"></text>
    <text>客服</text>
    <button open-type="contact" class="btn"></button>
  </view>
  <view class="cts">
    <text class="iconfont icon-fenxiang"></text>
    <text>分享</text>
    <button open-type="share" class="btn"></button>
  </view>`
  

收藏我感觉跟加入购物车差不多,就是某些部分比购物车简单,某些部分比购物车稍微复杂,下边的是我的代码

// pages/goods_detail/goods_detail.js
import regeneratorRuntime from '../../lib/runtime/runtime';

var app = getApp()
Page({

  /**
   * 页面的初始数据
   */
  data: {
    goods_id: "",
    detail_list: [],
    banner: [],
    lists: "",
    show: true,
    lss: []
  },
  /**
   * 生命周期函数--监听页面加载
   */
  sc(e) {
    console.log(e);
    //ls是当前这个商品详情的数据
    let ls = e.currentTarget.dataset.list
    //如果本地存有收藏的数据就获取过来保存,没就保存为空
    let sclist = wx.getStorageSync('sclist') || []
    //在本地没有数据的情况下将当前商品收藏进本地
    if (sclist.length === 0) {
      sclist.push(ls)
      //收藏成功的动画
      wx.showToast({
        title: '收藏成功',
      })
      //show是html页面收藏按钮的样式
      
      this.setData({
        show: false,
        lss: sclist
      })
      //修改完的数据存进本地
      wx.setStorageSync('sclist', sclist)
    } else {=
    /将当前页面的商品id与保存的商品的id对比
      let indexx = sclist.findIndex(v => v.goods_id === ls.goods_id)
      console.log(indexx);
      //不存在这件商品继续收藏进本地保存
      if (indexx == -1) {
        sclist.push(ls)
        wx.showToast({
          title: '收藏成功',
        })
        console.log(sclist);
        this.setData({
          show: false,
          lss: sclist
        })
        wx.setStorageSync('sclist', sclist)
      } else {
      //有的话就不保存显示已经收藏
        wx.showToast({
          title: '已收藏',
        })
        return false
      }
    }
  },
  getlist() {
    app.axios.detail(this.data.goods_id).then(res => {
      this.setData({
        detail_list: res.data.message,
        banner: res.data.message.pics,
        lists: JSON.stringify(res.data.message)
      })
    })
  },
  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {
  //页面显示得时候判断当前商品是否收藏
    let sclist = wx.getStorageSync('sclist') || []
    //判断该商品存在不存在,控制html收藏按钮的样式
    let inde = sclist.findIndex(v => v.goods_id == this.data.goods_id)
    console.log(inde);
    if (inde == -1) {
      this.setData({
        show: true
      })
    } else {
      this.setData({
        show: false
      })
    }
  },

})
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值