i'm trying to generate array of errors based on certain conditions , how can i achieve that , postman arrises this : "Cannot read properties of undefined (reading 'push')"
username: {
type: String,
required: [true, "username is required"],
// minlength: 6,
unique: true,
// match: [
// /^(?=.{3,20}$)(?![_.])(?!.*[_.]{2})[a-zA-Z0-9._]+(?<![_.])$/,
// "username shouldn't include . or _ and at least 3 letters and at maximum 20 letters",
// ],
validate: {
errors: [],
validator: function (username) {
if (username.length < 10) {
this.errors.push("username cannot be less than 3 characters");
}
if (username.match(/(?![_.])(?!.*[_.]{2})[a-zA-Z0-9._]+(?<![_.])$/)) {
this.errors.push(`username shouldn't begin or end with . or _ `);
}
},
message: this.errors,
},
},