Node.js 使用`$merge时出现Ajv架构验证错误`
当结合使用Node.js 使用`$merge时出现Ajv架构验证错误`,node.js,ajv,Node.js,Ajv,当结合使用ajv和ajv合并修补程序时,如果存在一个验证错误,数据验证也会返回以下错误 should pass "$merge" keyword validation 作为验证错误。 但当没有验证错误时,它返回空 const Ajv = require('ajv'); let ajv = new Ajv({ useDefaults: true, removeAdditional: true }); require('ajv-merge-patch')(ajv); let schema = {
ajv
和ajv合并修补程序
时,如果存在一个验证错误,数据验证也会返回以下错误
should pass "$merge" keyword validation
作为验证错误。
但当没有验证错误时,它返回空
const Ajv = require('ajv');
let ajv = new Ajv({ useDefaults: true, removeAdditional: true });
require('ajv-merge-patch')(ajv);
let schema = {
$id: 'Job',
type: 'object',
properties: {
title: { type: 'string' },
},
additionalProperties: false,
};
ajv.addSchema(schema);
const createSchema = {
$merge: {
source: { $ref: 'Job' },
with: {
required: [
'title',
],
},
},
};
const createValidator = ajv.compile(createSchema);
const data = {
title: '',
};
if (!createValidator(data)) {
console.log(createValidator.errors);
}
您的代码按预期工作;我看不出有什么问题here@customcommander我再次检查了它,如果我有错误,它也会发送这个错误。我将更新问题。您的代码按预期工作;我看不出有什么问题here@customcommander我再次检查了它,如果我有错误,它也会发送这个错误。我会更新这个问题。