С помощью следующего контроллера, как я могу вызвать один метод из другого в том же контроллере?NodeJs - вызов одного метода из другого в контроллере сервера
В частности, вызов login() при успешной регистрации() при сохранении той же функции для login(), когда она используется формой?
Линия this.login (NEWUSER) не работает, и не обычный старый логин (NEWUSER)
В обоих случаях я получаю сообщение об ошибке:
TypeError: Cannot call method 'login' of undefined
var mongoskin = require('mongoskin');
module.exports = {
login: (function (req, res) {
req.db.collection('auth').findOne({_id: mongoskin.helper.toObjectID(req.body.id)},
function (err, results) {
// log person in and send results to client
}
)
}),
signup: (function (req, res) {
var user = req.body;
req.db.collection('auth').insert(user, function (err, newUser) {
// after adding user, automatically log them in
// does not work:
//login(newUser, function (err) {
// do something
//})
// does not work:
this.login(newUser, function (err) {
// do something
})
}
)
})
}
Я обычно определяю функцию вне экспорта, тогда на нее можно ссылаться как на экспорт, так и на другие функции. –