Koa2學習(一)環境搭建
Koa2學習(一)環境搭建
- koa2腳手架
- koa2服務安裝
- koa2-generator目錄結構
什麼是 Koa2
koa 是由 Express 原班人馬打造的,致力於成為一個更小、更富有表現力、更健壯的 Web 框架。 使用 koa 編寫 web 應用,通過組合不同的 generator,可以免除重複繁瑣的回撥函式巢狀, 並極大地提升錯誤處理的效率。koa 不在核心方法中繫結任何中介軟體, 它僅僅提供了一個輕量優雅的函式庫,使得編寫 Web 應用變得得心應手。
檢查版本
在node版本大於v7.6.0的情況下,可以直接安裝使用koa2
$ node -v v8.9.4
要在 node < 7.6 版本的 Koa 中使用 async
方法, 官方推薦使用babel's require hook
。
require('babel-register');
// 應用的其餘 require 需要被放到 hook 後面
const app = require('./app');
要解析和編譯 async
方法, 你至少應該有 transform-async-to-generator
或 transform-async-to-module-method
外掛.
例如, 在你的 .babelrc 檔案中, 你應該有:
{ "plugins": ["transform-async-to-generator"] }
koa-generator
是一款快速生成koa服務的腳手架工具,和express-generator類似。
通過應用生成器工具 koa 可以快速建立一個應用的骨架。
快速安裝
全域性安裝腳手架工具:
$ npm install -g koa-generator
進入到專案資料夾目錄執行生成命令:
$ koa2 <project_name>
安裝依賴:
$ npm install
啟動服務:
$ npm start
瀏覽器瀏覽頁面:
開啟瀏覽器,輸入localhost:3000 ,在瀏覽器介面看到
此時,你已經成功跑通了第一個簡單的koa2服務
koa-generator引數
在建立專案時,有一些定製化的引數,可選引數:
-h --help
幫助
-V --version
版本號
-e --ejs
新增ejs模板引擎支援(預設是jade)
--hbs
新增hbs模板引擎支援(預設是hbs)
-H --hogan
新增hogan.js支援
-c --css <engine>
新增css樣式 支援 less sass styus css(預設是css)
--git
(g小寫) 新增 .gitignore
-f --force
force on non-empty directory
目錄結構
│ app.js 入口檔案
│ package.json
│
├─bin
│ www node啟動檔案
│
├─public 靜態資源
│ ├─images
│ ├─javascripts
│ └─stylesheets
│ style.css
│
├─routes
│ index.js 路由入口
│ users.js 開發者配置的路由
│
└─views 頁面層
error.pug
index.pug
layout.pug
可以看到,整體頁面結構非常簡單,就是一個最最基本的服務層骨架。