摘要:前言這個(gè)輪子已經(jīng)有很多人造過了,為了不重復(fù)造輪子,我將本項(xiàng)目以三階段實(shí)現(xiàn)大家可以在中的查看純前端后端前端后端前端希望能給大家一個(gè)漸進(jìn)學(xué)習(xí)的經(jīng)驗(yàn)。
前言
Vue+Socket.io這個(gè)輪子已經(jīng)有很多人造過了,為了不重復(fù)造輪子,我將本項(xiàng)目以三階段實(shí)現(xiàn)(大家可以在github中的Releases查看):
純前端(Vuex)
后端+前端(JavaScript)
后端+前端(TypeScript)
希望能給大家一個(gè)漸進(jìn)學(xué)習(xí)的經(jīng)驗(yàn)。
本項(xiàng)目地址:https://github.com/spiritree/...
歡迎Star&Fork
npm install -g vue-cli
vue init webpack my-project
vue init ElemeFE/webpack-typescript my-project(感謝餓了么分享的TypeScript的模板)
這樣就在當(dāng)前目錄下創(chuàng)建了完整的工程模板
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文件夾結(jié)構(gòu)├── 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 部署到服務(wù)器Linux+Nginx的組合,可以一鍵部署虛擬主機(jī)
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; }如何使用預(yù)覽地址:https://app.spiritree.me/
Github地址:https://github.com/spiritree/...
開啟JavaScript服務(wù)端git clone https://github.com/spiritree/vue-socket.io-chat.git
npm install
npm run server
開啟TypeScript服務(wù)端npm install
cd server
gulp build
npm run tsserver
瀏覽器訪問 http://localhost:8989
預(yù)覽 參考資料
如遇在線列表不同步,刷新重進(jìn)即可TypeScript 入門教程
Vue + TypeScript 嘗鮮體驗(yàn)
TypeScript官方手冊
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/89386.html
摘要:前端的所使用的技術(shù)棧后端這個(gè)小項(xiàng)目才開始,使用已經(jīng)搭建好了前端開發(fā)環(huán)境及相應(yīng)的的配置。接下來我會(huì)帶著大家一起完成整個(gè)簡書的開發(fā)工作。 這是一個(gè)開源的個(gè)人項(xiàng)目。 前端的所使用的技術(shù)棧: typescriptes6vue2vue-cliwebpack2axiosangular4angular-cli 后端: nodejsmongoDBejs 這個(gè)小項(xiàng)目才開始,使用vue-cli已經(jīng)搭建好了...
摘要:具體來說,包管理器就是可以通過命令行,幫助你把外部庫和插件放到你的項(xiàng)目里面并在之后進(jìn)行版本升級(jí),這樣就不用手工復(fù)制和更新庫。現(xiàn)在有的包管理器主要是和。 一、基礎(chǔ) 1、學(xué)習(xí)HTML基礎(chǔ) HTML給你的網(wǎng)頁賦予了結(jié)構(gòu)。它就像是人的骨架那樣讓你保持站立。首先你需要去學(xué)習(xí)語法以及它必須提供的一切。你的學(xué)習(xí)應(yīng)該聚焦在下面這些東西上: 學(xué)習(xí)HTML基礎(chǔ),了解如何編寫語義HTML 理解如何把網(wǎng)頁分...
摘要:具體來說,包管理器就是可以通過命令行,幫助你把外部庫和插件放到你的項(xiàng)目里面并在之后進(jìn)行版本升級(jí),這樣就不用手工復(fù)制和更新庫?,F(xiàn)在有的包管理器主要是和。 一、基礎(chǔ) 1、學(xué)習(xí)HTML基礎(chǔ) HTML給你的網(wǎng)頁賦予了結(jié)構(gòu)。它就像是人的骨架那樣讓你保持站立。首先你需要去學(xué)習(xí)語法以及它必須提供的一切。你的學(xué)習(xí)應(yīng)該聚焦在下面這些東西上: 學(xué)習(xí)HTML基礎(chǔ),了解如何編寫語義HTML 理解如何把網(wǎng)頁分...
摘要:只有動(dòng)手,你才能真的理解作者的構(gòu)思的巧妙只有動(dòng)手,你才能真正掌握一門技術(shù)持續(xù)更新中項(xiàng)目地址求求求源碼系列跟一起學(xué)如何寫函數(shù)庫中高級(jí)前端面試手寫代碼無敵秘籍如何用不到行代碼寫一款屬于自己的類庫原理講解實(shí)現(xiàn)一個(gè)對象遵循規(guī)范實(shí)戰(zhàn)手摸手,帶你用擼 Do it yourself!!! 只有動(dòng)手,你才能真的理解作者的構(gòu)思的巧妙 只有動(dòng)手,你才能真正掌握一門技術(shù) 持續(xù)更新中…… 項(xiàng)目地址 https...
閱讀 856·2019-08-30 15:54
閱讀 3322·2019-08-29 15:33
閱讀 2707·2019-08-29 13:48
閱讀 1229·2019-08-26 18:26
閱讀 3339·2019-08-26 13:55
閱讀 1491·2019-08-26 10:45
閱讀 1174·2019-08-26 10:19
閱讀 312·2019-08-26 10:16