首先我们先来了解一下 Koa 是什么,https://koa.bootcss.com/,这是 Koa 的官方网站,映入眼帘的第一句就是 Koa -- 基于 Node.js 平台的下一代 web 开发框架。
在学习 Koa 之前我们应对 Node.js 有一定的基础,我们都知道:
Node.js 是一个异步的世界,官方 API 支持的都是 callback 形式的异步编程模型,这会带来许多问题,例如:1、callback 嵌套问题 2、异步函数中可能同步调用 callback 返回 数据,带来不一致性。为了解决以上问题 Koa 出现了。
koa 是由 Express 原班人马打造的,致力于成为一个更小、更富有表现力、更健壮的 Web 框架。 使用 koa 编写 web 应用,可以免除重复繁琐的回调函数嵌套, 并极大地提 升错误处理的效率。koa 不在内核方法中绑定任何中间件, 它仅仅提供了一个轻量优雅的 函数库,使得编写 Web 应用变得得心应手。开发思路和 express 差不多,最大的特点就是 可以避免异步嵌套。
Koa2 的安装与使用对 Node.js 的版本也是有要求的,Node.js 是有要求的,它要求 Node.js 版本高于 V7.6。因为 node.js 7.6 版本 开始完全支持 async/await,所以才能完全支持 Koa2。
安装 Koa
安装 Koa 框架和我们以前安装其他模块是一样的。
npm install --save koa / cnpm install --save koa
--save 参数,表示自动修改 package.json 文件,自动添加依赖项。
接下来我们就实战来看一下如何安装使用一个最简单的 Koa 应用并在本地运行。
首先我们先创建一个我们要开发的项目的目录中,然后运行 npm init ,为我们的项目起个名字,然后一路回车,这样就会在我们的项目目录中创建一个最基本的 package.json 的文件,接下来安装我们要使用的 koa 模块 npm install koa --save ,这样我们就引入了 koa 木块,接下来就和 Express 模块是一样的操作流程,我们在项目目录中创建一个 app.js,在 app.js 中写我们的程序就可以了。
最终我们创建的项目目录如下:
我们在 app.js 中写一个简单的案例:
1 var koa = require("koa"); 2 3 var app = new koa(); 4 5 // Express 写法 6 // app.use(function (req, res) { 7 // res.send("hello word") 8 // }); 9 10 app.use(async (ctx) => { 11 ctx.body = "hello word" 12 }); 13 14 app.listen(3000);
在上面的代码中,我们首先引入 koa 模块,然后创建一个 koa 实例,接下来和 Express 一样的是创建一个中间价,然后写一个异步函数来向前端页面返回数据。
Express 的写法在这里就不做过多解释了,我们来看一下 koa 写法,我们通过 async ()=>{} 的异步方法与前端建立连接,里面会有一个 cxt 的参数,我们可以通过 ctx.body 的形式向前端发送数据。
app.listen(3000); 来监听 3000 端口,我们将程序运行起来,在前端输入 localhost:3000
这样我们就实现了一个最基本的 koa 的小案例,接下来我们会深入介绍 koa 框架。
原文地址:https://www.cnblogs.com/weijiutao/p/10688805.html