Я работаю над приложением javascript и у меня есть модель MVC, в контроллерах есть файл userController. js, а в моделях есть пользователь. js в файле функции очистки в папке Models . почему я получаю TypeError: Cannot read property 'trim' of undefined this error
//User.js files code goes here
let User = function (dataUser) {
this.dataUser = dataUser
this.errors = []
}
// В функции очистки я проверил строку типа ввода, а затем избегал любых фиктивных записей, используя свойства обрезки и строчные буквы, но Я получаю сообщение об ошибке ie Невозможно прочесть свойство 'trim' неопределенного значения этой ошибки
User.prototype.cleanUp = function () {
if (typeof this.dataUser.username != "string") {
this.dataUser.username = ""
}
if (typeof this.dataUser.email != "string") {
this.dataUser.username = ""
}
if (typeof this.dataUser.password != "string") {
this.dataUser.username = ""
}
this.dataUser = {
username: this.dataUser.username.trim().toLowerCase(),
email: this.dataUser.email.trim().toLowerCase(),
password: this.dataUser.password
}
}
User.prototype.login = function (callback) {
this.cleanUp()
usersCollection.findOne({ username: this.dataUser.username }, (err, attemptedUser) => {
if (attemptedUser && attemptedUser.password == this.dataUser.password) {
callback("Success")
} else {
callback("Invalid username / password")
}
})
}
// userController.js code
exports.login = function (req, res) {
let user = new User(req.body)
user.login(function (result) {
res.send(result)
})
}