點贊功能

思路:
1.先在data里面聲明id和index索引,是否點贊isLike;
2.綁定事件設置三個data-的值,獲取當前的id,index,isLike。
3.點擊事件,判斷是否為1,是的話彈窗提示并不執(zhí)行下面的代碼,否則,請求接口且成功的話,把isLike的值,通過setData賦給變量isLike.
注意,具體操作那個需要利用index.

<view class='' bindtap='onLike' data-index='{{index}}' data-isLike='{{item.isLike}}' data-schemeId='{{item.schemeId}}'>
      <image mode='widthFix' src='{{item.isLike==1?2.png:1.png}}'></image>
    </view>
data: {
    follow_info:[],
    //isLike: 0,
    schemeId:null,
    index:null
  },
onLike(e) {
    var self = this;
    var isLike = e.currentTarget.dataset.islike; 
    var index = e.currentTarget.dataset.index; 
    if(isLike==1){
      wx.showToast({
        title: '已點贊',
        icon: 'none',
        duration: 1000
      });
      return false;
    }
    var schemeId = e.currentTarget.dataset.schemeid;
    self.setData({
      schemeId: schemeId,
      index: index
    })
    app.checkSessionKey(this.onLike_fn)
  },
  onLike_fn(obj) {
    var self = this;
    var openId = obj.openId;
    var sessionKey = obj.sessionKey;
    var schemeId = self.data.schemeId;
    wx.request({
      url: app.globalData.http + '/a/b',
      method: 'POST',
      data: {
        openid: openId,
        session_key: sessionKey,
        schemeId: schemeId
      },
      success: function (res) {
        if (res.data.code == 200) {
          var follow_info = self.data.follow_info;
          var index = self.data.index;
          follow_info[index].isLike = 1;
          wx.showToast({
            title: res.data.msg,
            icon: 'none',
            duration: 1000
          });
          self.setData({
            follow_info: follow_info
          })
        }
      }
    })
  },
最后編輯于
?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內(nèi)容