首页 > 解决方案 > node.js 中的执行顺序是什么?

问题描述

所以问题是我无法在 node.js 代码执行中绕开我的头,这是我使用 atm 的代码

app.get('/cetvrti',(req,res,next)=>{
data=[];
for(i=0;i<12;i++){

    let Qf=db.query("SELECT Broj FROM tblPolisa WHERE ZastupnikID='"+IdZastupnik+"' AND DatumIzdavanja BETWEEN '"+datum[i].str+"' AND '"+datum[i].end+"';",(err,result,field)=>{
        
        console.log(result+'result prvi');
        if(err)throw err;
        else{
            console.log('pocetak else loopa');
            if(result.length<1)data.push(0);
            else data.push(result.length);
            
            console.log(data);

            
        

        }
    })
}
function rendering(d){
    console.log('ovo je console.log prije renderinga'+d);
    res.render('cetvrti-final',{zastupnik:d});
}
rendering(data);

})

datum[i].stranddatum[i].end只是我用来过滤一年中几个月的低谷的一些数组,所以是的)对我来说,类似的问题部分是console.log('ovo je console.log prije renderinga'+d);在 for 循环和所有 console.logs 之前执行,所以我认为它在整个循环之前进行渲染,这就是为什么我在加载时没有数据显示在 zastupnik/on 页面上,它仍然执行它只是我认为它就像首先渲染没有数据然后获取数据,这是毫无意义的我已经呈现了我的页面...任何建议或提示...正如我所说的我是新人,我不知道所有这些恶作剧是如何工作的:D。

标签: javascriptmysqlnode.jsexpress

解决方案


推荐阅读