#javascript #node.js #express #module-export
Вопрос:
У меня есть модуль экспорта, который получает идентификатор post_id и идентификатор текущего пользователя для обновления чего-либо в моей базе данных. До сих пор это работало для меня:
//call
const promise = authController.function(req.params.post_id, decoded.id);
promise.then(results => res.json(results));
exports.function = async (post_id, decoded) => {
// doing the thing
}
Теперь я начал использовать флэш-сообщения на случай, если что-то не так, чтобы предупредить пользователя, что я буду использовать это:
exports.function = async (post_id, decoded) => {
// doing the thing
if (error) {
req.flash("flash", 'Your login has expired.'); // or something like that
return res.redirect('back');
}
}
Так что теперь мне нужно как-то передать свои переменные и использовать req, res в той же функции. Как я могу сделать это правильно?
// The best I could come up with?
const promise = authController.function(req.params.post_id, decoded.id);
exports.function = async (req, res, post_id, decoded)
{ // the thing }
Комментарии:
1.
req.flash
? Является ли это попыткой каким-то образом «ответить» клиенту через запрос? Я не думаю, что это работает, не так ли? Вам нужно будет использоватьres
для вашего ответа, и в этом случае вам не придется изменять подпись вашей функции, если я правильно понимаю.