背景
相关知识来源于
哲玄前端(抖音ID:44622831736)大前端全栈实践课程,本文是个人学习实践后的学习记录。
eplis-core 是什么?
eplis-core 是基于 Koa 实现的文件解析引擎内核。其参考 egg 设计理念——“约定优于配置”,按照统一约定的风格和规范进行开发,可以约束开发者的代码存放位置,降低协作成本。同时,各个模块代码划分清楚,便于专注模块的开发。
核心内容
config-loader—— 解析服务端配置项文件service-loader—— 解析服务文件controller-loader—— 解析控制器文件middleware-loader—— 解析中间件文件router-schema-loader—— 解析 Koa 路由参数规范文件extend-loader—— 解析服务拓展插件文件router-loader—— 解析 Koa 路由文件
相关文件收拢到同一个文件夹中,其 loader 通过 glob 第三方工具包读取约定目录下的文件,解析内容挂载到 Koa 实例上。
而这个目录是团队自行约定的,规定哪些代码规定放在哪个位置,以什么形式编写。
例如 eplis-core 中约定的:
- 在
config/**/*.js包含所有的 config
- 在
app/service/**/*.js包含所有的 service
- 在
app/controller/**/*.js包含所有的 controller
- 在
app/middleware/**/*.js包含所有的 middleware
- 在
app/router-schema/**/*.js包含所有的 router-schema
- 在
app/extend/**/*.js包含所有的 extend
- 在
app/router/**/*.js包含所有的 router
eplis-core 有什么用?
借助该引擎内核,我们可以很简便将内存中的中间件方法、路由统一注册到应用程序中,自动完成应用开发的基础设施搭建工作,编码时可以通过实例获取各个模块想要的功能,链接各个模块,开发者只需专注于处理业务逻辑。