Я следовал официальному учебнику firebase по обещаниям (https://thewikihow.com/video_7IkUgCLr5oA), но в моем случае я не могу заставить его работать.
const promise = userRef.push({text:text});
const promise2 = promise.then((snapshot) => {
res.status(200).json({message: 'ok!'});
});
promise2.catch(error => {
res.status(500).json({message: 'error'});
});
Что я делаю неправильно? Каждый then() должен иметь свой ответ на случай, если что-то пойдет не так, но именно поэтому я пишу обработчик promise2.
Просто добавьте return
перед отправкой ответа.
const promise = userRef.push({text:text});
const promise2 = promise.then((snapshot) => {
return res.status(200).json({message: 'ok!'});
});
promise2.catch(error => {
return res.status(500).json({message: 'error'});
});
Также вы можете связать промисы следующим образом:
return userRef.push({text:text})
.then((snapshot) => {
return res.status(200).json({message: 'ok!'});
}).catch(error => {
return res.status(500).json({message: 'error'});
});