Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js 在执行函数之前进行渲染_Node.js_Mongodb_Express_Mongoose - Fatal编程技术网

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