Node.js 在执行函数之前进行渲染
在我检查是否存在函数之前,页面已加载。如何处理它Node.js 在执行函数之前进行渲染,node.js,mongodb,express,mongoose,Node.js,Mongodb,Express,Mongoose,在我检查是否存在函数之前,页面已加载。如何处理它 let messag=""; console.log(req.query.id); idpassmodel.exists({name:req.query.id}, function(err,result){ if(result===true){ console.log("before"); mess
let messag="";
console.log(req.query.id);
idpassmodel.exists({name:req.query.id}, function(err,result){
if(result===true){
console.log("before");
messag="id already exists";
if(req.query.pass!==req.query.pass1){
messag="passwords dont match";
}
}
});
console.log("after");
res.render('signup',{message:messag});
})
之所以会出现这种情况,是因为
存在
调用工作异步
,因此我建议将呈现
调用移到回调中
let message="";
console.log(req.query.id);
idpassmodel.exists({name:req.query.id}, function(err,result){
if (result===true) {
console.log("before");
message = "id already exists";
if (req.query.pass!==req.query.pass1) {
message = "passwords dont match";
}
}
res.render('signup',{message:message});
});
console.log("after");
我还将变量messag
重命名为message