在res.render上发送javascript变量 - 表达

时间:2014-07-31 10:05:19

标签: javascript json node.js express pug

我正在尝试构建一个小应用程序来从包含JSON的config.js文件调用,并根据JSON中的name键将该数据写入页面。

app.get('/:verb', function(req, res) {

    if(!!req.param.verb) {
       config.data.forEach(function(o) {
           var verbName    = o.name,
               description = o.description;

       });

    };
res.render('verb', {title: verbName, subtitle: description});
});

我尝试做的是使用verbNamedescription javascript变量作为res.render结构中的Jade变量。目前,由于verbNamedescription不是字符串,此代码将失败。

是否有可能以这种方式包含变量?

PS - 快递1周,玉2天,所以所有的想法/解决方案都将受到赞赏。

1 个答案:

答案 0 :(得分:3)

您声明变量的范围是错误的。您还在每个forEach循环执行中覆盖它们

app.get('/:verb', function(req, res) {

    var verbName,
        description;

        if(!!req.param.verb) {
           config.data.forEach(function(o) {
               verbName    = o.name,
               description = o.description;

           });

        };
    res.render('verb', {title: verbName, subtitle: description});
    });