這個項目是express風格的最新的Koa 2項目的示例,已集成到koa-generator裏,算是集成一些所謂的最佳實踐吧javascript
git clone https://github.com/17koa/koa2-demo.git cd koa2-demo npm install npm start
open in browserjava
最簡單啓動方式git
node bin/run
最經常使用的集成nodemon的方式,代碼變更會自動重載(其實就是nodemon去執行bin/run)github
npm start
支持pm2部署express
#npm run pm2 pm2 start bin/run
Koa 2是一個 middleware framework, 它提供了 3 種不一樣類型的中間件寫法npm
詳見koa 2的文檔json
koa-views
is using consolidate under the hood.服務器
List of supported enginesbabel
須要注意的koa2使用的koa-views也是下一版本的koa-views@next,當前項目已經處理過了,不須要再處理的,哈哈
npm i -S jade
in app.js
app.use(views(__dirname + '/views', { extension: 'jade' }));
npm i -S ejs
in app.js
app.use(views(__dirname + '/views-ejs', { extension: 'ejs' }));
➜ koa2-demo git:(master) tree . -L 2 . ├── LICENSE ├── README.md ├── app.js ├── bin │ ├── run │ └── www ├── node_modules │ ├── co │ ├── debug │ ├── ejs │ ├── jade │ ├── koa │ ├── koa-bodyparser │ ├── koa-convert │ ├── koa-json │ ├── koa-logger │ ├── koa-onerror │ ├── koa-router │ ├── koa-static │ ├── koa-views │ ├── nodemon │ └── runkoa ├── package.json ├── public │ ├── images │ ├── javascripts │ └── stylesheets ├── routes │ ├── index.js │ └── users.js ├── views │ ├── error.jade │ ├── index.jade │ └── layout.jade └── views-ejs ├── error.ejs └── index.ejs 24 directories, 13 files
說明
若是你喜歡express風格的生成,推薦koa-generator
若是你喜歡babel + koa2能夠參考Minimal koa v2 boilerplate.
全文完