扩展概览
当你想扩展 schema-dsl,但还不确定应该使用自定义 DSL 类型、校验关键字、runtime 隔离还是插件封装时,先看本页。
扩展系统有多个层次。它们可以组合,但解决的问题不同。
我应该用哪种扩展?
自定义 DSL 类型入口
自定义 DSL 类型章节统一承载 DSL 字面量、s('...') seed builder、s.xxx() factory、参数,以及普通业务类型不再暴露自定义 base builder 方法的约定:
全局扩展与 runtime 作用域扩展
如果应用启动期只加载一套扩展,使用 schema-dsl/pure 的全局入口:
如果框架、插件宿主、租户、测试套件或 worker 需要隔离扩展状态,使用 schema-dsl/runtime:
推荐阅读顺序
- 可复用业务类型、参数和
s.xxx()factory,看 自定义 DSL 类型。 - 需要新增 validator keyword,看 自定义校验关键字。
- 准备接入真实应用或框架前,看 框架集成与目录结构。
- 只有需要插件生命周期和 hook 编排时,再看 插件管理器(高级)。
对应示例文件
示例入口: extensions-overview.ts 说明: 并排展示自定义 DSL 类型、runtime 作用域类型和自定义校验关键字路径。