🏆今日学习目标:第二十期——文章点赞功能的实现
✨个人主页:颜颜yan_的个人主页
⏰预计时间:15分钟
🎉专栏系列:我的第一个微信小程序
前言
哈喽大家好,本期是微信小程序专栏第二十期。本期主要内容是文章点赞功能的实现。
每期内容是连载呢,建议大家可以看看往期内容,更好理解噢~
效果图
实现步骤
点赞功能的思路和上期收藏的思路是一样的噢~
首先在接口中添加处理点赞操作的方法。调用updataPostData方法,定义一个情况为“up”,赋值给变量data,并进行返回。
// 点赞功能 up(){ var data = this.updatePostData('up'); return data; }
在updataPostData方法中添加当case为’up’的情况,并对upStatus进行判断,如果当前状态是未点赞,则当点击时,upStatus的状态变为true,同时数量增加;否则upStatus的状态变为false,同时数量减少。
// 更新本地的点赞、评论信息、收藏、阅读量 updatePostData(category){ var itemData = this.getPostItemById(), postData = itemData.data, allPostData = this.getAllPostData(); switch(category){ case 'collect': // 处理收藏,如果当前状态是未收藏,则增加数量,否则减少数量。 if(!postData.collectionStatus){ // 当前状态是未收藏 postData.collectionNum++; postData.collectionStatus = true; }else{ // 当前状态是收藏 postData.collectionNum--; postData.collectionStatus = false; } break; // 处理点赞功能 case 'up': if(!postData.upStatus){ postData.upNum++; postData.upStatus = true; }else{ postData.upNum--; postData.upStatus = false; } break; default: break; } // 更新缓存数据库 allPostData[itemData.index] = postData; this.execSetStorageSync(allPostData); return postData; }
在页面中使用条件渲染进行判断。并在组件中添加响应用户点赞的方法。
添加响应用户点赞的方法,当用户点击点赞按钮后 ,该方法将调用接口中的up方法并将返回的最新数据使用this.setData更新。
// 点赞功能事件 onUpTap:function(event){ var newData = this.dbPost.up(); this.setData({ 'post.upStatus':newData.upStatus, 'post.upNum':newData.upNum }) }
总结
以上就是今天的学习内容啦~
如果有兴趣的话可以订阅专栏,持续更新呢~
咱们下期再见~