写一个例子理解koa-compose的用法及函数结果顺序

我们知道koa-composekoa框架实现洋葱包裹型中间件的基础,通过一段简短的代码来理解它的使用方式及结果顺序

const compose = require('koa-compose');

const composes = [];

function use(fun) {
  composes.push(fun);
}

use(async (ctx, next) => {
  console.log('第一个中间件');
  await next();
  console.log('1->END');
});

use(async (ctx, next) => {
  console.log('第二个中间件');
  await next();
  console.log('2->END');
});

use(async (ctx, next) => {
  console.log('第三个中间件');
  await next();
  console.log('3->END');
});

const exec = compose(composes);

(async () => {
  const ctx = {};
  await exec(ctx, async () => {
    console.log('END');
  });
})();

结果如下


执行结果
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 本节将结合例子和源码对koa2的中间件机制做一介绍。 什么是中间件? 中间件的本质就是一种在特定场景下使用的函数,...
    空无一码阅读 5,327评论 0 2
  • 众所周知,在函数式编程中,compose是将多个函数合并成一个函数(形如: g() + h() => g(h())...
    DC_er阅读 4,153评论 0 0
  • 前言 Koa 是运行在 Node.js 中的 web 服务框架,小而美。 Koa2 是 Koa 框架的最新版本,K...
    let_Scott阅读 11,067评论 2 28
  • web应用开发框架 第一章 koa入门与使用 简介 Koa 是一个新的 web 框架,由 Express 幕后的原...
    强某某阅读 3,126评论 0 0
  • 一、大数据技术体系 大数据应用领域 互联网领域:搜索引擎、推荐系统、广告系统 电商领域:用户画像、推荐系统、用户行...
    neimengguzn阅读 4,181评论 1 51

友情链接更多精彩内容