问题描述
下面是我每次都必须使用的代码,它工作正常;表示使用每个循环,然后使用if-else条件从mongoDB中存储的数组列表中获取特定元素。
Mongoose arrayList Addtasks data schema:
Addtasks : [{
topic: String,words: Number,keywords: String,website: String,otherdetails: String,exampleRadios: String,deadline: Date,Date: String,fileName: String,Bigpaths:[]
}]
router.route('/profile/view/:id')
.get(function(req,res,next) {
User.findOne({_id: req.user.id},function(err,dataUser) {
if (dataUser) {
dataUser.Addtasks.forEach(element => {
if(element._id == req.params.id)
{
res.render('viewTask',{mainData: element});
}
});
}
else {
res.render('error');
}
});
})
我已经尝试过此代码,但是无法正常工作。我是否可以知道为什么我们不能像往常一样直接使用Mongoose直接获取特定数据?为什么这不起作用?
router.route('/profile/view/:id')
.get(function(req,dataUser) {
if(dataUser.Addtasks[0].id == req.params.id)
{
res.render('viewTask',{mainData: dataUser.Addtasks[0].topic);
}
else {
res.render('error');
}
});
})
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)