问题模块 框架类型 问题类型 终端类型 操作系统 微信版本 基础库版本
框架 微信小程序 Bug 客户端 iOS 6.6.6 2.0.2
这是一个点赞 点击图标后将留言id存起来 离开页面统一上传,但是当我返回这个页面取消点赞时他会连续将if与else里的内容都执行 ,
当将return 隐藏这种情况会发生会发生 ,不隐藏则不会
重现步骤 点击一下赞 然后切换页面 然后再切回来, 点击同一条就会true与fa'l'se同时打印 但是 false里的this.setDate没有执行,导致 数字点赞数一直在减少,
代码片段
//点赞 update_zan: function (e) { let that = this; let data = e.currentTarget.dataset;//点击对象 let id = data.id;//点击对象id let likesNum; for (let i in that.data.msgPersonList) { if (id == that.data.msgPersonList[i].id) { let tagIsadd = 'msgPersonList[' + i + '].isadd'; let tagLikes = 'msgPersonList[' + i + '].digg'; likesNum = that.data.msgPersonList[i].digg; let cookie_id = wx.getStorageSync('zan') || [];//同步操作,获取全部点赞的mid let isadd = 1;//点赞flay值 1点赞了 0未点赞 let newmessage = []; if (cookie_id.includes(id)) {//说明已经点过赞,取消赞 console.log(cookie_id.includes(id)) that.setData({ [tagIsadd]: 0, [tagLikes]: Number(likesNum) - 1 }) let m = 0; for (let j in cookie_id) { if (cookie_id[j] != id) { newmessage[m] = cookie_id[j]; m++ } } wx.setStorageSync('zan', newmessage);//删除取消赞的mid console.log(wx.getStorageSync('zan')) //return true } else { console.log(cookie_id.includes(id)) that.setData({ [tagIsadd]: 1, [tagLikes]: Number(likesNum) + 1 }) cookie_id.unshift(id); wx.setStorageSync('zan', cookie_id);//新增赞的mid console.log(wx.getStorageSync('zan')) //return true } } } },