TV4: получить более подробную информацию об обнаруженных ошибках
Я использую TV4 для обнаружения ошибок схемы. Я пытался получить все результаты, используя: tv4.validateMultiple
вызов, который обнаружил несколько ошибок, но не сказал, где и почему.
Есть ли способ в tv4 предоставить более подробную информацию о сбоях?
var res = tv4.validateMultiple(data, schema,null,true);
errors:[]
0:{}
message:"Missing required property: coMMand"
name:"ValidationError"
type:"Error"
1:{}
message:"Unknown property (not in schema)"
name:"ValidationError"
type:"Error"
2:{}
message:"Unknown property (not in schema)"
name:"ValidationError"
type:"Error"
1 ответ
Решение
Я думаю, что это невозможно сделать с TV4, так как больше не было никаких улучшений для модуля. AJV, с другой стороны, обеспечивает лучшие результаты:
var ajv = new Ajv({allErrors: true});
//define some schema
schema = {...};
//validate with some invalid schema
ajv.validate(schema,{s:'a'});
console.log(ajv.errors);
Найден следующий результат:
dataPath:""
keyword:"additionalProperties"
message:"should NOT have additional properties"
params:{}
additionalProperty:"s"
schemaPath:"#/additionalProperties"