글 좋아요 및 취소 기능
/*업데이트 좋아요*/
update_zan:function(e){
var that = this;
var data = e.currentTarget.dataset;
var mid = data.mid;
var cookie_mid = wx.getStorageSync('zan') || [];// mid
var isadd = 1;
var newmessage = [];
if (cookie_mid.includes(mid)){// ,
isadd = 0;
var m = 0;
for (var j in cookie_mid){
if(cookie_mid[j] != mid){
newmessage[m] = cookie_mid[j];
m++
}
}
wx.setStorageSync('zan', newmessage);// mid
}else{
cookie_mid.unshift(mid);
wx.setStorageSync('zan', cookie_mid);// mid
}
wx.request({
url: app.globalData.api.api_system,
data: {
action: 'zannum',
mid: mid,
isadd: isadd,
wxid: app.globalData.wxid
},
method: 'GET',
// header: {},
success: function (res) {
var message = that.data.message;
for (var i in message) {
if(message[i].mid == mid){
if(isadd){
message[i].zan = parseInt(message[i].zan) + 1
}else{
message[i].zan = parseInt(message[i].zan) - 1
}
}
}
that.setData({
message: message
})
}
})
코드 주의: (1) 이미 좋아요를 눌렀던 메시지 id를 로컬 캐시에 저장해야 한다. 이렇게 하면 다시 좋아요를 눌렀을 때 판단할 수 있고 좋아요를 취소한다. 좋아요를 취소하는 동시에 캐시에 있는 id를 제거해야 한다.(2) 추가 좋아요와 취소 좋아요는 같은api에 사용되며, isadd=1 또는 isadd=0을 통해 추가 또는 취소를 판단한다. (3) 댓글 목록을 자주 읽지 않기 위해this를 직접 호출할 수 있다.data.메시지, 그리고 어떤 댓글의 좋아요를 반복해서 바꾼 다음에 바로 다시 값을 부여하면 좋아요를 동적으로 바꿉니다! ---------------------------//옮겨 싣다
전재 대상:https://www.cnblogs.com/Alitar/p/10823585.html
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.