У меня есть объект, который содержит одно или несколько свойств типа date. Я хотел бы проверить объект с помощью пакета валидатора схемы jj ajv.
Я мог бы преобразовать свойства типа date в строку, используя toISOString (). Но объект может быть довольно большим, и поэтому я не хочу преобразовывать все свойства даты всего объекта.
Есть ли решение, кроме преобразования даты в строку?
Могу ли я как-то создать собственный валидатор схемы ajv?
// My example schema
const schema = {
"properties": {
"createdAt": {
"type": "string",
"format": "date-time"
},
"lastName": { "type": "string" },
"firstName": { "type": "string" }
}
};
// My example testobject
const testObj = {
createdAt: new Date(),
lastName: "Doe",
firstName: "John"
}
// The validation
const validate = ajv.compile(schema);
const valid = validate(testObj);
if(!valid) console.log('Invalid: ' + ajv.errorsText(validate.errors));
Это сделает журнал консоли, потому что testObj.createdAt - это дата, а не строка.