Как установить опции min-max validator.js
Начал изучение Node JS + mongoose и наткнулся на проблему при валидации данных в модели. Вот код:
import mongoose from 'mongoose';
import validator from 'validator';
const UsersSchema = new mongoose.Schema(
{
email: {
type: String,
validate: [validator.isEmail, 'invalid email'],
require: true,
unique: true
},
password: {
type: String,
require: true
},
firstName: {
type: String,
validate: [validator.isLength, { min: 3 }],
require: true
},
lastName: {
type: String,
require: true
},
avatarURL: String,
},
{
timestamps: true
}
);
export default mongoose.model('Users', UsersSchema)
Строка:
validate: [validator.isLength, { min: 3 }],
Валидатор isLength постоянно отдает TRUE т.к. в default значение min=0
Ну и собственно когда я пытаюсь его изменить то данное свойство не применяется.
Подскажите что я делаю не так?
P.S. Из вариантов решения напрашивается:
firstName: {
type: String,
validate: (arr) => {
return validator.isLength(arr, { min: 2, max: 30 })
},
require: true
},
Но хочется более лаконичного решения...