我已经查看了Mongoose文档,但仍然找不到如何处理query.exec()
中的错误信息。
var query = User.findOne({_id: userId});
var promise = query.exec(function(err) {
if (err) {
res.json(err);
return;
}
});
promise.then(function(user) {
res.json(user.name);
});
当我传递错误的用户ID时,控制台上会打印出
Unhandled rejection CastError: Cast to ObjectId failed
错误。我原以为res.json(err)
和return
语句足以正确处理这个错误并阻止它在控制台中显示,但事实并非如此。我该怎么做呢?