經(jīng)過(guò)三個(gè)月的努力奮斗愉适,FreeNG UI框架現(xiàn)在已經(jīng)進(jìn)入維護(hù)階段闪幽,也終于有點(diǎn)時(shí)間搞搞其他東西,左思右想,最終決定搞一個(gè)簡(jiǎn)單的聊天室怎炊。雖然網(wǎng)上教程眾多,但還是想自己完整的跑一遍淹办,過(guò)過(guò)手癮印荔。
主要涉及到以下內(nèi)容:
Express
Node.js
pug
Socket.IO
IndexedDB
Node.js 是一個(gè)基于Chrome V8 引擎的JavaScript 運(yùn)行環(huán)境。官網(wǎng): https://nodejs.org/en/
Express 是一種保持最低程度規(guī)模的靈活 Node.js Web 應(yīng)用程序框架从撼,為 Web 和移動(dòng)應(yīng)用程序提供一組強(qiáng)大的功能州弟。(官網(wǎng): http://expressjs.com/)
pug是基于node的一個(gè)模板引擎。(官網(wǎng): https://pugjs.org/api/getting-started.html)
Socket.IO 是一個(gè)面向?qū)崟r(shí) web 應(yīng)用的 JavaScript 庫(kù)低零。它使得服務(wù)器和客戶端之間可以實(shí)現(xiàn)實(shí)時(shí)雙向的通信婆翔。(官網(wǎng): https://socket.io/)
IndexedDB 是一種低級(jí)API,用于客戶端存儲(chǔ)大量結(jié)構(gòu)化數(shù)據(jù)(包括, 文件/ blobs)掏婶。(官網(wǎng): https://www.w3.org/TR/IndexedDB/)
v0.1.1版本支持的功能:
- 聊天記錄自動(dòng)保存
- 群聊
- 發(fā)表情/圖片/視頻/音頻
未來(lái)功能:私聊/換膚/好友增刪改查/創(chuàng)群/消息提醒
簡(jiǎn)單的頁(yè)面: Github: easy-chat
使用方法
從Github下載:
git clone https://github.com/IronPans/easy-chat
在終端執(zhí)行(安裝package.json中列出來(lái)的依賴):
npm install
運(yùn)行:
npm start
然后在多個(gè)瀏覽器中訪問(wèn): http://localhost:3100啃奴,就可以暢聊了。