Koa

koa

一、洋葱模型

二、洋葱模型原理

洋葱模型可以理解成函数嵌套调用

koa 中,中间件被 next() 方法分成了两部分。next() 方法上面部分会先执行,下面部分会在后续中间件执行全部结束之后再执行。

原理模拟:

运行结果:

compose函数模拟

koa是通过koa-compose库进行中间件调用的,我们可以通过写一个简版compose函数模拟下

方式1:Array.prototype.reduceRight

方式2:柯里化方式(递归)

三、简版koa

测试代码:

运行结果:

koa-compose源码入口

参考:

Last updated