对于循环完成/推送到数组之前页面上的EJS渲染

时间:2016-05-18 00:38:53

标签: javascript node.js express ejs templating

我正在尝试使用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循环完成之前,我该怎样做才能在页面上呈现。

1 个答案:

答案 0 :(得分:0)

将循环放在渲染函数中:

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 }) 
});