node项目中koa2 环境搭建

时间:2018-11-18
本文章向大家介绍Node.js使用Koa搭建基础项目,需要的朋友可以参考一下

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-generatortransform-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

可以看到,整体页面结构非常简单,就是一个最最基本的服务层骨架。