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
可以看到,整体页面结构非常简单,就是一个最最基本的服务层骨架。