iKcamp团队制作|基于Koa2搭建Node.js实战项目教学(含视频)☞ 环境准备
安装搭建项目的开发环境
视频地址:https://www.cctalk.com/v/15114357764004
文章
Koa 起手 - 环境准备
由于 koa2
已经开始使用 async/await
等新语法,所以请保证 node
环境在 7.6
版本以上。
安装node.js
- 直接安装 node.js :node.js官网地址 https://nodejs.org
nvm管理多版本 node.js :可以用nvm 进行node版本进行管理
- Mac 系统安装 nvm [https://github.com/creationix/nvm#manual-install](https://github.com/creationix/nvm#manual-install) - windows 系统安装 nvm [https://github.com/coreybutler/nvm-windows](https://github.com/coreybutler/nvm-windows) - Ubuntu 系统安装 nvm [https://github.com/creationix/nvm](https://github.com/creationix/nvm)
项目初始化
身为程序员,初入江湖第一招:『Hello World』
首先,创建一个目录 koa2-tutorial/
用来存放我们的代码。然后开始初始化项目:
// 创建 package.json 文件。该文件用于管理项目中用到一些安装包 npm init
项目初始化完成后,在创建的目录里,新建文件 app.js
并在里面写下:
console.log('Hello World')
现在,我们的项目结构应该如下:
├── app.js ├── package.json
打开控制台,进入目录 koa2-tutorial/
并输入:
node app.js
成功输出 Hello World
,说明环境正常。至此,我们的准备工作完成。
下面我们会基于 koa2
启动服务器。
启动服务器
运行如下命令,安装 Koa
(版本信息会自动保存在 package.json
中)
// 安装 koa,并将版本信息保存在 package.json 中 npm i koa -S
重写 app.js
,增加如下代码:
const Koa = require('koa') const app = new Koa() app.listen(3000, () => { console.log('server is running at http://localhost:3000') })
运行 node app.js
并打开浏览器访问 localhost:3000
,页面显示 Not Found
。
因为在启动服务器后,代码并没有做其他的事情,也就没有了交互。
我们继续修改 app.js
文件:
const Koa = require('koa') const app = new Koa() // 增加代码 app.use(async (ctx, next) => { await next() ctx.response.type = 'text/html' ctx.response.body = '<h1>Hello World</h1>' }) app.listen(3000, () => { console.log('server is running at http://localhost:3000') })
重启服务器并再次访问,这时页面将正常显示 Hello World
。
在增加的代码里面,用到了 Koa
的「中间件」,那么什么是「中间件」呢?下一节我们会为大家详细讲述。
下一篇:《中间件用法——讲解 Koa2 中间件的用法及如何开发中间件(含视频)》
上一篇:iKcamp新课程推出啦~~~~~开始免费连载啦~每周2更共11堂iKcamp课|基于Koa2搭建Node.js实战项目教学(含视频)| 课程大纲介绍
相关推荐
boneix 2020-10-21
MrQuinn 2020-08-16
starzhangkiss 2020-04-19
LorenLiu 2020-03-28
Qimingweikun 2020-03-05
发条戏子 2020-02-01
jackyhungvip 2020-01-19
Qimingweikun 2019-12-09
Anything0 2019-11-17
lert0 2019-11-04
88530198 2019-11-03
sqliang 2019-11-03
苹果咏 2019-07-23
bobbaobao 2018-11-13
lert0 2019-07-01
fanix 2019-07-01
liwenbocsu 2019-07-01