一、建立npm配置文件php
npm init
二、建立项目文件html
// 在项目根目录建立 app.js // 项目入口文件 start.js // 项目启动文件
三、下载依赖node
npm install koa@next --save npm install babel-core --save-dev npm install babel-polyfill --save-dev npm install babel-preset-es2015 --save-dev npm install babel-preset-stage-3 --save-dev
四、编写文件git
// start.js require("babel-core/register")( { presets: ['stage-3','es2015'] } ); require("babel-polyfill"); require("./app.js");
换行es6
// app.js const Koa = require('koa'); const app = new Koa(); app.use(async (ctx, next) => { const start = new Date(); await next(); const ms = new Date() - start; console.log(`${ctx.method} ${ctx.url} - ${ms}ms`); }); // response app.use(ctx => { ctx.body = 'Hello Koa5555'; }); app.listen(3000);
五、启动项目github
// 首先下载 npm install nodemon -g
换行npm
nodemon start
换行浏览器
打开浏览器,访问页面
六、文档:
babel
koa1文档:https://github.com/koajs/koaapp
koa2文档(在分支中):https://github.com/koajs/koa/tree/v2.x
中国版gitbook之koa http://book.apebook.org/minghe/koa-action/xtemplate/xtemplate.html
七、其余知识点
(1)nodemon:每次咱们的js文件修改后,node就会自动重启,就省的咱们手动去重启了,这样方便了不少
(2)babel-core:当你想在代码中运行es6代码的话,须要安装babel-core
(3)babel-cli:而若是你想在终端编译es6或者是运行es6版本的REPL的话,须要安装babel-cli
(4)babel-polyfill:模拟ES6语法习惯
(5)babel-core/register:require hook 的做用就是替换原先的require,以便在加载自动对代码进行编译,运行。其实这个作的即是重写require.extensions
中对应的扩展名的加载程序,而且默认会判断这个文件是不是node_modules
中的模块,若是是的话,那么将不会进行转换。不然的话,会进行转换。
八、尝试中遇到的问题
(1)没有下载安装babel-polyfill
一、本博客中的文章摘自网上的众多博客,仅做为本身知识的补充和整理,并分享给其余须要的coder,不会用于商用。
二、由于不少博客的地址看完没有及时作保存,因此不少不会在这里标明出处,很是感谢各位大牛的分享,也但愿你们理解。