摘要:前言这个轮子已经有很多人造过了,为了不重复造轮子,我将本项目以三阶段实现大家可以在中的查看纯前端后端前端后端前端希望能给大家一个渐进学习的经验。
前言
Vue+Socket.io这个轮子已经有很多人造过了,为了不重复造轮子,我将本项目以三阶段实现(大家可以在github中的Releases查看):
纯前端(Vuex)
后端+前端(JavaScript)
后端+前端(TypeScript)
希望能给大家一个渐进学习的经验。
本项目地址:https://github.com/spiritree/...
欢迎Star&Fork
npm install -g vue-cli
vue init webpack my-project
vue init ElemeFE/webpack-typescript my-project(感谢饿了么分享的TypeScript的模板)
这样就在当前目录下创建了完整的工程模板
Socket.io在Server端(Express)
import * as socketIo from "socket.io" this.io.on("connection", (socket: any) => { socket.on("sendMessage", (data: any) => { this.io.emit("boardcastMessage", data) })
在Client端(Vue)
Gulp+TypeScript(后端)npm install gulp --save-dev
npm install gulp-typescript --save-dev
npm install @types/express --save-dev
npm install @types/socket.io --save-dev
Server文件夹结构├── app.js
添加tsconfig.json
├── gulpfile.js
├── register.js
├── src
│ ├── type-app.ts
│ └── type-register.ts
├── tsconfig.json
├── type-app.js
└── type-register.jsTypeScript官方手册
{ "include": [ "src/*.ts" ], "compilerOptions": { "noImplicitAny": true, "lib": ["es6"], "target": "es5", "outDir": "" } }配置gulpfile.jsvar gulp = require("gulp"); var ts = require("gulp-typescript"); var tsProject = ts.createProject("tsconfig.json"); gulp.task("build", function () { return tsProject.src() .pipe(tsProject()) .js.pipe(gulp.dest("")); });从JavaScript=>TypeScript 部署到服务器Linux+Nginx的组合,可以一键部署虚拟主机
OneinStack部署的遇到的坑
https://github.com/socketio/s...Error during WebSocket handshake: Unexpected response code: 400
在nginx.conf添加
location / { proxy_pass http://localhost:8989; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; proxy_set_header Host $host; }如何使用预览地址:https://app.spiritree.me/
Github地址:https://github.com/spiritree/...
开启JavaScript服务端git clone https://github.com/spiritree/vue-socket.io-chat.git
npm install
npm run server
开启TypeScript服务端npm install
cd server
gulp build
npm run tsserver
浏览器访问 http://localhost:8989
预览 参考资料
如遇在线列表不同步,刷新重进即可TypeScript 入门教程
Vue + TypeScript 尝鲜体验
TypeScript官方手册
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/89386.html
摘要:前端的所使用的技术栈后端这个小项目才开始,使用已经搭建好了前端开发环境及相应的的配置。接下来我会带着大家一起完成整个简书的开发工作。 这是一个开源的个人项目。 前端的所使用的技术栈: typescriptes6vue2vue-cliwebpack2axiosangular4angular-cli 后端: nodejsmongoDBejs 这个小项目才开始,使用vue-cli已经搭建好了...
摘要:具体来说,包管理器就是可以通过命令行,帮助你把外部库和插件放到你的项目里面并在之后进行版本升级,这样就不用手工复制和更新库。现在有的包管理器主要是和。 一、基础 1、学习HTML基础 HTML给你的网页赋予了结构。它就像是人的骨架那样让你保持站立。首先你需要去学习语法以及它必须提供的一切。你的学习应该聚焦在下面这些东西上: 学习HTML基础,了解如何编写语义HTML 理解如何把网页分...
阅读 812·2019-08-30 15:54
阅读 3281·2019-08-29 15:33
阅读 2666·2019-08-29 13:48
阅读 1166·2019-08-26 18:26
阅读 3305·2019-08-26 13:55
阅读 1384·2019-08-26 10:45
阅读 1133·2019-08-26 10:19
阅读 274·2019-08-26 10:16