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

dim*_*ima 2 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>
Run Code Online (Sandbox Code Playgroud)

输出实际上是 value 属性的每个字母。例如:{"quantity": "1"} 变为 0 | { 1 | ” 2 | q 3 | u 4 | a 5 | n 6 | t 7 | i 8 | t 9 | y 10 | “ 11 | : 12 | ” 13 | 1 14 | “

并不是说与 nunjucks 的经历,就这一点而言,这是一个很常见的任务。如果能推动正确的方向,我们将不胜感激。

rob*_*lep 5

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

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

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

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

res.render('purchase', { purchase : req.query });
Run Code Online (Sandbox Code Playgroud)