[英]Why am I getting an "undefined" result from my MongoDBQuery in Node?
您是否在路由器中添加了mergeParams
? 此选项将参数 object 添加到请求const router = express.Router({ mergeParams: true });
然后/predict/:id
结果为req.params.id
默认情况下,此选项在 express 中禁用
问题是你没有使用await
所以在console.log(user.examenes)
行中变量user
不是 mongo 返回的数据; 是另一个没有属性 examenes 的examenes
。 并试图访问该值是undefined
。
所以你可以使用:
let user = await (usuario.findOne({_id: req.params.id}))
我认为你应该使用await
关键字
try{
var user = await model.findOne({ _id: req.params.id});
} catch (e) {
// Handle Errors
};
或者
model.findOne({ _id: req.params.id}).then(result => {
var user = result;
}).catch(e=> {
// Handle Errors
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.