Koa2 的安装运行记录(一)

摘要:
{"presets":["latest","react"]}4、建立两个启动文件:index.js-----------------------------require;require;//引入这个文件babel-polyfill很重要,否则出现错误require;main.js-----------------------------importKoafrom'koa';constapp=newKoa();app.use;//responseapp.use;app.listen;或者app.listenconsole.log;=============================使用:nodeindex.js可以运行了。将上面的两个文件index.jsmain.js移动至src目录。两种代码都可以运行了:nodesrcindex.js或者nodelibindex.js6、继续安装nodemonnpminstall-gnodemon全局安装现在可以使用nodemon起动:nodemon它会在package.json中寻找"main":"./lib/index.js"项中配置。{"presets":["es2015","react"]}在Node7下,必须使用node--harmonyindex.js才能使用代码中的:async/await

1、参考koa+react(一)

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

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

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

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

2、安装 koa2包:npm install --save koa@next

3、babel V6 必须安装下列包:

npm install --save-dev babel-corebabel-registerbabel-polyfill

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

配置babel 参数:

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

{

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

}

4、建立两个启动文件:

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 可以运行了。 这种方式,不能看到编译后的代码。

5、使用命令行方式:

如果想使用命令行编译(不是自动编译),可以安装 :

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 srcindex.js 或者 node libindex.js

6、继续安装nodemon

npm install -g nodemon 全局安装

现在可以使用nodemon 起动 : nodemon

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

7、其它;;;

如果配置babel 参数,在.babelrc 文件。

{

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

}

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

免责声明:文章转载自《Koa2 的安装运行记录(一)》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇fastdfs 集群搭建说说C#中IList与List区别下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

【React】react学习笔记10-兄弟组件间的传值

上一篇博文简述了脚手架的使用,以及在ws中的简单配置,详细的配置方法就不讲了,可能有很多细节,在日常使用中发掘就好。然后是脚手架的项目结构以及之间的联系,这个完全可以自己找出来,再不济就百度一下就好。 今天记录一下组件之间的传值问题,特别是兄弟组件的传值,真的是为难了我好久的一个问题: 要做啥呢?: 方便兄弟组件中传值,我知道的实现方式有两种,一种是使用R...

快速打造 react 后台管理系统

前言 相信很多小伙伴都有可能碰到开发后台管理系统这样的需求,那么我们该如何快速的完成这个需求呢 本文将以 react 为切入点,记录打造一个基础管理系统模板的过程,以此加深对 react 技术栈以及项目实战的理解,希望对大家开发一个这样的项目有所帮助 如果文章中有出现纰漏、错误之处,还请看到的小伙伴多多指教,先行谢过 项目简介 react-admin 是由...

react(三):容器组件和傻瓜组件

让一个组件只专注于一件事,如果发现让一个组件做的事情太多,就可以把这个组件拆分成多个组件让每一个组件只专注于一件事 《深入浅出react和redux》 ---程墨 一个react组件最基本的基本上就是完成两大功能   1、读取store的状态,用于初始化组件的两大状态,监听store的状态变化   2、根据当前的props和state,渲染出用户的界面 先...

React Native for Web配置

更多内容参见个人技术博客,无广告欢迎关注React Native for Web配置兼容性:React Native 0.55。 “React Native for Web”使得可以使用React DOM在Web上运行React Native组件和API。查看在Web上运行的React Native示例的实时演示。 高质量的Web界面:可以轻松地在Jav...

从零开始的野路子React/Node(9)Antd + multer实现文件上传

最近心血来潮,打算自己捣腾个web app来练练手(虽然大概率会半路弃坑……),其中有一部分是关于文件上传的,在实现的过程中遇到了一些坑,于是打算把血泪教训都记录下来。 前端的部分采用了Antd,不得不说真是香,至少比我司内部的前端库香了1000倍……事半功倍。后端部分则主要通过multer来实现,目测应该是一种比较通用的做法? 1、捯饬前端 首先我们新建...

react antd form 自定义表单验证validator 需要注意的细节,否则会无法触发表单提交。

1、每一个if判断后,都需要加入callback(),否则会阻塞表单的提交。 validateNoChinese = (_, value, callback) => { const reg = /^d+$|^d*.d+$/g; const startValue = value?.split('.') if(!value){...