Vue实现的聊天系统「建议收藏」

Vue实现的聊天系统

大家好,又见面了,我是全栈君。

项目地址:github.com/CCZX/wechat目前项目一直在更新中。欢迎大家留下宝贵的意见。

一、具备的功能

  1. 好友之间聊天,支持问题、图片、表情、音视频通话以及白板(适用WebRTC实现)。

  2. 对好友支持备注、分组功能,分组可以添加、修改、删除。

  3. 好友之间的消息支持已读状态提醒,可以即时的知道对方是否已读消息。

  4. 在线好友统计,在每个分组中可以查看当前在线好友的数量,并对在线好友的头像做高亮处理。

  5. 群聊,群聊目前只支持文字、图片、表情的形式,目前群聊消息也不支持已读提醒(后续完善)。

  6. 空间,类似于QQ空间,可以发表自己的动态、查看好友的动态

  7. 动态编辑,支持对空间进行删除、编辑的操作。

  8. 动态互动,支持点赞、评论、评论回复功能。

  9. 添加好友、添加群聊,在添加后需要对方同意。

  10. 日程管理,支持新建日程、删除日程的功能。

  11. 后台管理:独立的项目,使用React实现。

  12. 更多细节功能在后续几天我线上部署代码后欢迎来体验。

二、技术栈

Vue、Vuex、Element-UI、React、axios、sass、ES6、WebSocket、Node等。

三、难点

  1. 各种组件的拆分,项目文件结构。

  2. 修改用户分组、分组后用户界面即时响应。

  3. 在获取会话后,对每条会话最后一条消息的获取处理逻辑。

  4. 对接七牛云实现实现图片的上传。

  5. webRTC技术。

  6. 收到消息后即时提醒以及未读消息的数量提醒。

  7. 消息已读提醒设置。

  8. 用户退出登录后,后端登录信息的即时清除。

  9. 空间动态的评论以及回复评论实现。

  10. 不同页面组件之间执行操作后的响应。

四、项目截图

1、最近会话列表页面(最近会话按照最后消息时间排序,在发送新的消息后该会话会排序到第一条)

Vue实现的聊天系统「建议收藏」

2、好友分组、群聊分类

Vue实现的聊天系统「建议收藏」
Vue实现的聊天系统「建议收藏」

3、新消息提醒、已读提醒

Vue实现的聊天系统「建议收藏」
Vue实现的聊天系统「建议收藏」

4、空间动态

Vue实现的聊天系统「建议收藏」

该项目本人最近会一直跟进,直到实现一个较为完善的聊天系统,后续再进行优化升级。项目地址:github.com/CCZX/wechat  欢迎大家提出宝贵的意见,

链接:https://juejin.im/post/5e81a04ef265da47fb46d338

Vue实现的聊天系统「建议收藏」

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/111801.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Java内存映射原理与实现

    Java内存映射原理与实现Java虚拟机规范中定义了Java内存模型(JavaMemoryModel,JMM),用于屏蔽掉各种硬件和操作系统的内存访问差异,以实现让Java程序在各种平台下都能达到一致的并发效果,JMM规范了Java虚拟机与计算机内存是如何协同工作的:规定了一个线程如何和何时可以看到由其他线程修改过后的共享变量的值,以及在必须时如何同步的访问共享变量。

    2022年6月21日
    30
  • 牛客网–字符串排序

    牛客网–字符串排序

    2021年5月19日
    89
  • 关于HashMap扩容机制

    关于HashMap扩容机制HashMap的底层有数组+链表(红黑树)组成,数组的大小可以在构造方法时设置,默认大小为16,数组中每一个元素就是一个链表,jdk7之前链表中的元素采用头插法插入元素,jdk8之后采用尾插法插入元素,由于插入的元素越来越多,查找效率就变低了,所以满足某种条件时,链表会转换成红黑树。随着元素的增加,HashMap的数组会频繁扩容,如果构造时不赋予加载因子默认值,那么负载因子默认值为0.75,数组扩容的情况如下:1:当添加某个元素后,数组的总的添加元素数大于了数组长度*0.75(默认,也可自己设

    2022年6月25日
    29
  • MySQL数据库管理工具_mysql数据库管理工具有哪些

    MySQL数据库管理工具_mysql数据库管理工具有哪些SQLyog管理工具MySQL管理工具通过SQLyog连接MySQL使用SQlyog工具创建数据库MySQL管理工具除了使用命令行来操作MySQL数据库之外,还可以使用图形化管理工具来管理数据。SQLyog是一款简洁高效,功能强大的MySQL数据库管理工具。使用SQLyog可以快速直观地让用户完成对数据库的操作。该工具可从SQLyog官网(http://www.webyog.com/cn/)下载。SQLyog安装过程比较容易,这里不多说。通过SQLyog连接MySQL启动MySQL服务后

    2022年8月22日
    3
  • 如何保证docker2375端口的安全

    如何保证docker2375端口的安全情景再现:之前有很多朋友提过,当使用docker-maven-plugin打包SpringBoot应用的Docker镜像时,服务器需要开放2375端口。由于开放了端口没有做任何安全保护,会引起安全漏洞,被人入侵、挖矿、CPU飙升这些情况都有发生,今天我们来聊聊如何解决这个问题。问题产生的原因首先我们要明白问题产生的原因,才能更好地解决问题!Docker为了实现集群管理,提供了远程管理的端口。DockerDaemon作为守护进程运行在后台,可以执行发送到管理端口上的Docker命令。当我们修改do

    2022年6月13日
    74
  • WDA原理分析

    WDA原理分析1、什么是WDAWebDriverAgent是Facebook在17年的SeleniumConf大会上推出了一款新的iOS移动测试框架。下面摘录一段官方对于WebDriverAgent的介绍字段:(官方文档:https://github.com/facebook/WebDriverAgent)WebDriverAgent在iOS端实现…

    2022年7月12日
    16

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号