开发在线客服系统聊天界面,JS实现相邻两条消息之间间隔小于3分钟,就不展示消息时间

我在开发一个客服聊天界面,每条消息都有发送时间,我想要实现相邻两条消息之间间隔小于3分钟的就不展示发送时间.

下面就是消息的JSON结构,里面的time就是发送时间

复制代码
message = {
  "msg_id": 629255,
  "time": "2023-02-11 00:41:04",
  "content": "chatGPT",
  "mes_type": "visitor",
  "name": "山东聊城",
  "avator": "/static/images/computer.png",
  "read_status": "read"
};
复制代码

下面的msgList就是消息的数组,当前 i 的时间,与 i+1 的时间取差值,小于3分钟的,就把show_time设置为false

这样在界面上渲染,循环数组的时候,判断show_time来决定是否展示时间

复制代码
                    for(var i=0;i<msgList.length;i++) {if((i+1)<msgList.length){
                            const nextTime = new Date(msgList[i+1]["time"]).getTime();
                            const currTime = new Date(row["time"]).getTime();
                            if((currTime-nextTime)>=180000){
                                row.show_time=true;
                            }else{
                                row.show_time=false;
                            }
                        }
                        _this.msgList.unshift(row);
                    }
复制代码

 

posted @   唯一客服系统开发笔记  阅读(132)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
历史上的今天:
2020-04-17 [javascript] typescript的安装
2020-04-17 [Oauth] OAuth 2.1废弃隐式验证方式
2020-04-17 [Oauth] OAuth 2.1整合简化OAuth 2.0
2019-04-17 [Linux] host dig nslookup查询域名的DNS解析
2018-04-17 [日常] Go语言圣经-匿名函数习题
2016-04-17 [javaEE] Servlet的调用过程和生命周期
点击右上角即可分享
微信分享提示
1
chat with us