1、koa
和koa 1相比,koa2完全使用Promise並配合async
來實現異步。
Nunjucks是一個模板引擎。
2、mysql
(1)Model
首先要定義的就是Model存放的文件夾必須在models
內,並且以Model名字命名,每個Model必須遵守一套規範:
- 統一主鍵,名稱必須是
id
,類型必須是STRING(50)
; - 主鍵可以自己指定,也可以由框架自動生成(如果爲null或undefined);
- 所有字段默認爲
NOT NULL
,除非顯式指定; - 統一timestamp機制,每個Model必須有
createdAt
、updatedAt
和version
,分別記錄創建時間、修改時間和版本號。其中,createdAt
和updatedAt
以BIGINT
存儲時間戳,最大的好處是無需處理時區,排序方便。version
每次修改時自增。
(2)我們不要直接使用Sequelize的API,而是通過db.js
間接地定義Model
3、mocha
單元測試框架,既可以在瀏覽器環境下運行,也可以在Node.js環境下運行。
4、WebSocket
WebSocket是HTML5新增的協議,它的目的是在瀏覽器和服務器之間建立一個不受限的雙向通信的通道,比如說,服務器可以在任意時刻發送消息給瀏覽器。
在Node.js中,使用最廣泛的WebSocket模塊是ws。