微信小程序点赞+取消点赞多项点击

2

微信小程序点赞+取消点赞多项点击

微信小程序点赞+取消点赞多项点击

最近接触到小程序,发现很有意思。在项目中遇到了一点小问题,就是点赞+取消点赞有些冲突,还有就是多项的点击。话不多说咱们直接上代码!!!!

效果图

首先,我们来看一下效果图:

![效果图]( index.wxml -->

{{item.content}}

```

js

```javascript// index.jsPage({

data: {

msgList: [

{ id:1, content: '这是第一个消息' },

{ id:2, content: '这是第二个消息' },

{ id:3, content: '这是第三个消息' }

]

},

handleLike(e) {

const id = e.currentTarget.dataset.id;

const msgList = this.data.msgList;

const index = msgList.findIndex(item => item.id === id);

if (index !== -1) {

msgList[index].isLiked = !msgList[index].isLiked;

this.setData({ msgList });

}

}

});

```

css

```css/* index.css */

.msg-item {

padding:10px;

border-bottom:1px solid ccc;

}

.msg-item button {

float: right;

}

```

在上面的代码中,我们定义了一个`msgList`数组,包含三个消息对象,每个对象都有一个`id`和一个`content`属性。我们还定义了一个`handleLike`函数,它会根据点击的按钮的`data-id`属性找到对应的消息对象,并将其`isLiked`属性值取反。

点赞+取消点赞

当用户点击"点赞"按钮时,`handleLike`函数会被调用。它会找到当前点击的消息对象,并将其`isLiked`属性值取反。如果该属性值为`true`,则表示该消息已被点赞;如果为`false`,则表示未被点赞。

多项点击

在上面的代码中,我们使用了`wx:for`指令来循环遍历`msgList`数组中的每个对象。我们还使用了`bindtap`事件绑定到按钮的`handleLike`函数,以便当用户点击按钮时,可以找到对应的消息对象并执行相应操作。

总结

在本文中,我们讨论了微信小程序点赞+取消点赞多项点击的实现。我们使用了`wx:for`指令和`bindtap`事件绑定来实现循环遍历和点击事件处理。同时,我们还定义了一个`handleLike`函数来处理点赞和取消点赞的逻辑。

参考

* 微信小程序官方文档: 小程序开发指南:

小程序点赞微信小程序

版权声明:除非特别标注,否则均为网络文章,侵权请联系站长删除。

上一篇 Python3.5+fiddler4 爬取微信公众号点赞,阅读,标题,推送时间等信息

下一篇 面试题,微信朋友圈的“赞”和“评论”为啥是隐藏操作的?