中间件这个东西 运用得到 可以帮我们解决一些不必要放在路由中的一些逻辑处理
在用户匹配到路由 之前 或者 之后 做的一些事情
因为 egg 是基于 koa的 所以koa得洋葱模型也被 egg所采用
1. 在egg中创建一个 middleware 文件夹
2. 创建一个 middlewaredemo.js
options 是给 中间件传来的参数 app 是当前的应用实例
module.exports = function(options, app) {
console.log(options);
return async function(ctx, next) {
console.log('hello world');
await next(); // 继续往下走
}
}
3. 在config/config.default.js 中注册使用
// 配置中间件 文件名字要对应起来
config.middleware = ['middlewaredemo'];
// 给中间件传值
config.middlewaredemo = {
name: 'hello world'
}
4. 然后就可以看到实际效果了
确实在路由匹配的时候 执行了 下 并且参数也正确传入进去了