侧边栏壁纸
博主头像
我的学习心得 博主等级

行动起来,活在当下

  • 累计撰写 223 篇文章
  • 累计创建 60 个标签
  • 累计收到 4 条评论

目 录CONTENT

文章目录

Egg11 - 插件

Administrator
2022-04-24 / 0 评论 / 0 点赞 / 1018 阅读 / 0 字

插件与中间件各自解决的问题

中间件的定位是拦截请求,并在拦截前或者拦截后做一些事情,例如鉴权、记录日志等。

初次之外其它与请求无关的事情,例如定时任务、应用启动操作等,应该交给插件去做。

插件的引入和通用配置

使用包管理工具安装插件,在 config/plugin.ts 中配置插件。

通用配置参数如下:

  • enable (boolean) 是否启用插件
  • package (string) 从 npm 安装的插件
  • path (string) 从指定路径安装的插件
  • env (string[]) 只在指定环境中启用插件

使用 config/plugin..ts 根据不同的环境自动加载插件。

例如一个只在开发环境才会安装和启用的插件:

{
  "devDependencies": {
    "egg-demo": "*"
  }
}
const plugin = {
  demo: true
}

默认的插件配置文件是 config/plugin.ts

插件的安装方式

插件可以从 npm 安装,或者从本地安装,分别对应packagepath参数,二者只能指定一个。

默认的插件列表

  • onerror 异常处理
  • Session
  • i18n 多语言
  • watcher 文件和文件夹监控
  • multipart 文件流式上传
  • security
  • development 开发环境配置
  • logrotator 日志切分
  • schedule 定时任务
  • static 静态服务器
  • jsonp
  • view 模板引擎
  • ……
0

评论区