compile 方法
Validator.compile(schema, cacheKey?) 会将 JSON Schema 编译为 AJV 验证函数,并在传入 cacheKey 时复用缓存。
方法签名
参数
schema- JSON Schema 对象cacheKey- 可选缓存键;传入后,同一个Validator实例内可复用已编译结果
返回值
返回 AJV 验证函数,可直接像普通函数一样调用;执行结果为 true / false,错误详情挂在 validate.errors 上。
适用场景
- 同一份 schema 需要重复校验多次时,先
compile()再复用编译结果 - 需要自己控制缓存键,避免重复编译开销
- 想把编译和执行拆开,接入自定义流程
注意事项
cacheKey的缓存作用域是当前Validator实例,不跨实例共享- 如果只是对同一份 schema 做批量校验,也可以直接使用
validator.validateBatch()
对应示例文件
示例入口: compile.ts
说明: 覆盖 compile() 的编译结果复用、cacheKey 命中,以及失败场景下从验证函数读取错误详情。