佰推网logo

400-844-5354

当前位置:网站首页 > 新闻动态 > 小程序开发资讯

如何借助云开发实现即时一对一的不同场景的聊天功能

日期:2023-07-22访问量:0类型:小程序开发资讯

微信小程序云开发实现一对一聊天本文是第一篇写的,小程序已经做了很大修改,可以点这里查看,点击获取源码

有时小程序可能会涉及聊天、评论等功能,比如博客、外卖平台等。本文首先介绍如何利用云开发实现不同场景下的实时一对一和聊天功能。

首先,创建一个新的云开发小程序。 我们可以借助云端开发的即时通讯模板来实现自己的功能。 如果您不知道如何使用云开发,可以查看开发文档。

你会看到控制台上出现开始监控等信息,这就是.watch的用途。 详情请参阅文档。 只有利用手表来监听集合中符合查询条件的数据的更新事件,才能实现实时功能。 我们首先在云数据库中创建一个集合,用于存储我们发送的内容。点击云开发,点击数据库,点击+号输入集合名称,点击确定

我发现不管有多少个账号,只要发送了内容,就会进入这个聊天室。 那么如果我们想根据不同的环境进入不同的聊天室或者如何实现一对一的操作。 下面的解释对于新手来说比较简单,因为看完之后可以直接应用到自己的小程序中。 上帝可以自动忽略它。

首先我们来了解一下我们多个账号发送的消息为什么会进入一个聊天室,是否存在唯一指定的id。 我们先从数据库开始。我们连续发送几条消息来查看集合中每条记录的字段

根据他们的字段名,对比这些记录,我们发现_id等都是用户信息。 我们可以发现这个字段记录了我们发送的是文字还是图片,也就是说文字/图片可以清楚的告诉我们他们什么时候发送的内容。 然后就是我们的消息内容。 经过这样的分析,只是我们不知道他在做什么,所以我们从英文猜测他就是这个聊天室的id。所以我们copy()字段值,回到我们全局搜索定时任务的程序

我们不知道是哪一个,我们可以查看它们所在的路径,可以清楚的看到6是一个变量赋值,然后我们回想一下进入聊天室的过程,我们发现聊天界面就是6的路径,于是我们双击打开

如何借助云开发实现即时一对一的不同场景的聊天功能

我们打开room.js,发现可以找到数据

的值为demo,和我们刚才制作的集合中该字段的值一模一样,所以我们猜测它是定位聊天室的唯一id。 如果我们把这个值改成 ,我们会发现刚才发送的内容没有了,重新发送几条消息,数据库中的值就变成了 。

因此,我们确定了聊天室的唯一标识符,剩下的就很简单了。 我们只需要给这个变量赋值就可以解决我们一开始提到的问题,一对一聊天和不同的聊天室。 一对一意味着确定的值可以分配给两个用户或唯一标识符。

那么我们如何分配值,

可以看到我们是在room.js中,那么如何到room.js.发现我们进入的是im中

我们可以看到刚才进入聊天室的按钮可以跳转到聊天界面,那么我们就想是否可以通过传递参数来赋值,从而实现赋值,当然了。

因此,我们在点击按钮时传递该值,以便用户可以根据场景进入不同的聊天室。

这里我们没有使用他的跳跃方式,我们使用它,这样更加灵活。 我们创建三个并给它们 data-id,即我们的名字。 go是按钮对应的函数。

如何借助云开发实现即时一对一的不同场景的聊天功能

这样我们就可以跳转到房间页面传递参数,然后赋值。我们在room.js中赋值为空

在 room.js 中我们添加以下语句

从而实现赋值功能,我们接下来测试一下。 点击chat1,我们会发现输入内容 点击chat2输入内容,这已经是两个聊天室了。 这里的chat1 chat2只是一个名字,相当于我们微信的工作群和家庭群。 我们可以通过名字进入不同的聊天室。

我们也可以点击头像触发刚才的go功能,给data-go分配一个唯一的标识符,从而进入一对一的聊天室。例如:我们刚才在im.wxml页面

添加图像控件来模拟用户头像。 一键实现一对一聊天。 **然后我们需要通过数据库获取我的账号和头像用户,作为聊天室的唯一标识,从而实现一对一的聊天。 **这里,图片的data-id是通过js中模拟的变量名来传递的。 点击编译后我们就可以实现了


TAG标签:小程序开发 

声明:本文来自投稿,不代表佰推网立场,如若转载,请注明出处:http://www.ccsuit.cn/news/show307.html 若本站的内容无意侵犯了贵司版权,请给我们来信,我们会及时处理和回复。

相关新闻

相关案例

X微信咨询

截屏,微信识别二维码

微信号:dianzana1989

(点击微信号复制,添加好友)

  打开微信

微信号已复制,请打开微信添加咨询详情!