当我将其保存到mondodb(带有mongoose)时,收到了未处理的承诺拒绝警告,但是我实现了catch语句。 所以我不明白为什么会有这个警告。
请遵循我的代码, 欢呼。
-用promise声明函数:
module.exports = {
getGameResult : () => {
var gameResult = new GameResultModel();
return new Promise((resolve, reject) =>{
GameResultModel.find({}, function (err, docs){
if (err) reject(err);
if (!err) resolve(docs);
});
})
}
}
-调用函数:
router.get("/all", (req, res) => {
databaseFunction.getGameResult()
.then((result) => {
res.send(result);
res.sendStatus(200);
})
.catch((err) => {
res.send(err);
res.sendStatus(500);
});
});
答案 0 :(得分:0)
尝试一下:
GameResultModel.find({}, function (err, docs){
if (err) reject(err);
if (!err) resolve(docs);
}).catch(err => console.error("db.find has some error ", err));
我最近遇到了类似的问题,如果该解决方案有帮助,我将需要为您找到找到有关该问题和解决方案的详细说明的来源。