该项目是一类社交类项目 模仿的QQ的界面 通过该项目可以提升对Vue和NodeJs的使用 并培养一定的编程思维和解决问题的能力
整个项目包括前后端 总体的技术栈为
Vue3.2 + VueRouter4 + Vuex4 + Vant3 + Axios + NodeJS + Koa2 + Mongodb + Socket.io + Socket.io-stream + LocalStorage + Indexdb
Indexdb 原生的API操作比较繁琐 因此我封装了一个库 本次项目使用到了
GIT 和 NPM 地址如下
VueRouter4 和 Vuex4 是在 Vue3 中使用的版本
技术栈也是相对来说较为丰富的 包含了前后端 可以练习到很多技术 增加熟练度
希望大家参照项目的代码和功能点 自己复刻一下磨练出更多的项目经验
后端接口可以在 server/router 文件夹下看到 统一的前缀为 /api 不同模块的前缀详见代码
同时也可以在 src/api/api_constant.js 中查看接口地址
开发项目时 所有接口(除了登录接口)都需要在请求头中携带token 可以参考 src/api/request.js
token 在请求登录接口后 返回
如果不会后端 只需要给后端启动起来 然后参考 src/api/api_constant.js 中的 URL 地址 使用 axios 发送请求获取数据即可 注意要给数据库的数据导入进去 并启动 相关的数据库地址 项目接口地址 可以在 server/config 与 src/config 查看并修改
在 navicat 里链接本地数据库 并创建一个新的数据库 然后将根目录的 db_data 下面的json文件 通过 navicat连接本地mongodb数据库并导入数据
本次项目Mongodb是单机模式 所以直接安装 启动就可以了 无需配置 如果你自己设置了需要验证 那么可以参考如下的 Mongoose 链接格式:
关注微信公众号 阿祥说 回复 navicat 即可拿到 navicat 安装包和注册机
先移动到项目根目录 在执行如下任意一个命令 参考 package.json
以上均可 但是 cnpm 和 yarn 需要安装 可自行百度 推荐 yarn
$ cd vue3-xm-qq // 项目根目录
$ yarn serve | npm run serve
$ cd vue3-xm-qq // 项目根目录
$ cd server
$ node server.js || nodemon server.js
nodemon 需要安装 启动时注意相关的链接地址已经修改正确
群聊功能没写 不过在项目里做出了私聊群聊的区分 一个浏览器没做保存多个不同用户的聊天记录 所以切换用户时记得清空缓存
src/pages/chat 是主要的聊天逻辑组件 内部代码没有抽离 也没有封装 最原始的模样 更容易看懂理解一点
更多细节细小的功能在代码里看吧!注意演示时使用F12的手机模式进行调试 消息列表使用的是移动端事件
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。