在node express中将对象传递给nunjucks模板

时间:2016-09-28 12:35:41

标签: node.js express nunjucks

我将Express中的对象传递给Nunjucks模板

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

  purchase_data = JSON.stringify(req.query);
  res.render('purchase', {"purchase": purchase_data});

})

------------------------

<ul>
  {% for key,value in purchase %}
    <li>{{key}} | {{value}}</li>
  {% endfor %}
</ul>

输出实际上是value属性的每个字母。例如:{“quantity”:“1”}变为 0 | { 1 | “ 2 | q 3 | ü 4 |一个 5 | ñ 6 | Ť 7 |一世 8 | Ť 9 | ÿ 10 | “ 11 | : 12 | “ 13 | 1 14 | “

不是那种与nunjucks的经历,并且就此而言,但这是一项非常普遍的任务。在正确的方向推动将非常感激。

1 个答案:

答案 0 :(得分:3)

  

我将Express中的对象传递给Nunjucks模板

不,你不是。你正在传递一个字符串:

purchase_data = JSON.stringify(req.query);           // make a string
res.render('purchase', {"purchase": purchase_data}); // pass the string to the template

相反,只需按原样传递对象:

res.render('purchase', { purchase : req.query });