循环结束/推送到数组之前在页面上呈现EJS

EJS rendering on page before for loop finishes/pushed to array

本文关键字:EJS 结束 数组 循环      更新时间:2023-09-26

我正试图使用EJS在HTML中呈现一个数组。但是我的EJS是在数据被推送到空数组之前进行渲染的,因此给了我一个在页面上渲染的空数组。

app.set('view engine', 'ejs');
app.get('/', function(req, res) {
    res.render('index.ejs', { testgroup: testgroup })
});
var testgroup = [];
for (var i = 0; i < problems.length; i++) {
    var test = problems[i].state;
    testgroup.push(test);
    console.log(testgroup)
}

我该怎么做才能在for循环完成之前不在页面上渲染。

将循环放入渲染的函数中:

app.set('view engine', 'ejs'); 
app.get('/', function(req, res) 
    { 
        var testgroup = []; 
        for (var i = 0; i <  problems.length; i++){ 
             var test = problems[i].state;
             testgroup.push(test);
             console.log(testgroup) }
      res.render('index.ejs'{ testgroup:testgroup }) 
});