Koa2 的安装运行记录(一)

一、参考koa+react(一)

http://blog.suzper.com/2016/10/19/koa-react-%E4%B8%80/node

 

为了使用 KOA2 可以运行,必须可以使用ES7语法 async/await 可以编译,须要借用 babel 的能力。使用最新版本 V6。react

一、安装Node (V6或者V7)建立一个项目目录npm

     md  koa2pro  , cd  koa2pro ;  初始化  node ini  产生一个 package.json 文件json

二、安装 koa2包:     npm install --save  koa@nextbabel

三、babel V6 必须安装下列包:app

     npm install --save-dev  babel-core babel-register babel-polyfillkoa

     npm install --save-dev   react   后面要使用,先安装上。async

     配置 babel 参数:post

       使用一个 .babelrc 文件,增长下列配置项:latest 设置 = es2015 + ea2016 + es2017  三者之和。ui

      {

          "presets": ["latest", "react"]

       }

 四、创建两个启动文件:

      index.js

      -----------------------------

     require("babel-register");
     require("babel-polyfill");          //引入这个文件babel-polyfill很重要,不然出现错误
     require("./main.js");

 

      main.js

      -----------------------------

      import Koa from '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 Koa in app-async.js';
       });

      app.listen(3000);        或者 app.listen(3000, () => console.log('系统启动,端口:3000'))

      console.log("系统启动,端口:3000");

   =============================   

      使用: node index.js   能够运行了。  这种方式,不能看到编译后的代码。

 

五、使用命令行方式:

    若是想使用命令行编译(不是自动编译),能够安装 :

       npm install --save-dev  babel-cli

     而后在package.json 中加上:

      "scripts": {

          "build": "babel src -d lib"
       },

      须要创建两个目录 src 源代码目录,lib 编译后代码目录。将上面的两个文件 index.js main.js 移动至 src目录。

      使用:  npm run build  命令行,就能够在 lib 下看到编译成果了。

      两种代码均可以运行了:   node src\index.js   或者 node lib\index.js

六、继续安装 nodemon

     npm install -g  nodemon    全局安装

     如今可使用 nodemon 起动 :  nodemon 

      它会在 package.json 中寻找  "main": "./lib/index.js" 项中配置。做为启动文件。

 

七、其它;;;

     若是 配置 babel 参数,在.babelrc 文件 。  

      {

          "presets": ["es2015", "react"]

       }

      在Node7 下,必须使用 node --harmony  index.js   才能使用代码中的:  async/await

相关文章
相关标签/搜索