Node.js-NodeJSSocket.io实现的一个在线聊天室

  • H8_619715
    了解作者
  • 1.1MB
    文件大小
  • zip
    文件格式
  • 0
    收藏次数
  • VIP专享
    资源类型
  • 0
    下载次数
  • 2022-06-14 12:39
    上传日期
NodeJS Socket.io 实现的一个在线聊天室
Node.js-NodeJSSocket.io实现的一个在线聊天室.zip
  • ChatRoom-master
  • index.html
    1.3KB
  • .gitattributes
    33B
  • public
  • imgs
  • default.jpg
    1MB
  • js
  • main.js
    2.2KB
  • css
  • style.css
    3.1KB
  • app.js
    951B
  • Procfile
    16B
  • README.md
    1.6KB
  • .gitignore
    14B
  • package.json
    307B
  • demo.png
    41.4KB
内容介绍
# ChatRoom NodeJS + Socket.io 实现的一个在线聊天室, 预览效果如下 ![image](https://github.com/hwaphon/ChatRoom/blob/master/demo.png) 每打开一个网页,就可以输入姓名进入聊天室,然后就可以尽情的聊天啦! 提示: 1. 样式设置的比较简单,更谈不上响应式设计,所以建议在电脑上打开预览网址进行使用 2. 目前也正在找 `bug`,如果你找到了,希望多多指教 ### 实现 1. 主要依赖 `sockt.io` 实现,可以在 [Socket.io 官网](https://socket.io/) 查看使用文档,上手非常快。 2. 至于部署,是使用 `Heroku`,一个国外的平台,部署 `NodeJS` 程序十分简单,可以去 [Heroku 官方](https://www.heroku.com) 查看相关使用教程。 ### Bug 历程 - 20170508 问题出现: 当多个用户登录时,随着用户的离线会导致一些仍然在线的用户从左侧联系人中消失。 问题原因:为了能从 `DOM` 中删除元素,在用户连接的时候我在后台为每个用户分配了一个类似 `id` 的辨别机制,然后再插入 `DOM` 的时候以此为类名,不过我采取的策略是以用户数组的当前长度作为标志,这时候随着数组的递减,会导致一批用户拥有相同的标志,也就是在 `DOM` 中拥有相同的类名,所以会有此问题出现。 问题解决:使用 [uuid](https://www.npmjs.com/package/uuid) 模块,为每一个用户分配以时间为基准的随机数字串,这时用户标志重复的可能性是非常低的,几乎不可能出现,这样也就解决了这一问题。 ---
评论
    相关推荐
    • node.js:Node.js
      node.js 如果发现错误,请将其保存在并提出拉取请求。 谢谢!
    • node.js:学习 Node.js
      节点.js 学习 Node.js :D
    • node.js开发指南
      Node.js是一种方兴未艾的新技术,诞生于2009年。经过两年的快速变化,Node.js生态圈已经逐渐走向稳定。Node.js采用了以往类似语言和框架中非常罕见的技术,总结为关键词就是:非阻塞式控制流、异步I/O、单线程消息...
    • Node.js 7.x异步/等待支持演示-Node.js开发
      Node.js v7 async / await演示这是什么? Node.js v7.xx附带实验性的异步/等待支持,大大简化了编写现代服务器端代码所需的样板。 该项目是Node.js v7 async / await演示的演示。这是什么? Node.js v7.xx附带实验性...
    • node.js
      node.js !!!
    • node.js
      node.js 실습 Node.js版本-기프로젝트지
    • node.js
      node.js
    • node.js
      node.js
    • node.js:node.js学习
      node.js node.js研究
    • Node.js
      Node.js