我正在尝试学习expressjs,我有一个查询数据库的控制器,并返回一个看起来像这样的JSON对象:

[ { _id: 58cb851721c1c107ab436686,
   title: 'some title',
   content: 'this is content' },
  { _id: 58cb856321c1c107ab436688,
   title: 'ah yes',
   content: 'more title and contents' }
   ...
   ...
]


我现在想做的是在MDL卡布局中显示阵列中的每个元素。因此,如果上述json对象具有20个对象,则应该有20张卡片,每张卡片分别显示各自的_idtitlecontent属性的值。为此,我将必须使用如下所示的for循环:

for(var i = 0; i < data.length; i++) {
    <span> {{ data[i]._id }} </span> </br>
    <span> {{ data[i].title }} </span> </br>
    <span> {{ data[i].content }} </span> </br>
  }


对于ejs之类的东西,这显然非常容易,因为它允许模板内的循环逻辑。但是我不知道如何做到这一点,因为HoganJS缺少适当的文档显然无济于事。我在互联网上搜索了很多,但无济于事。目前,我正在渲染模板,如下所示:

res.render('index');

有可能在霍根(hogan)中这样做吗?还是我需要在路线上做些体操?

最佳答案

Hogan.js是针对髭测试套件开发的,因此,对于指定的模板而言,适用的所有内容对于hogan.js也是如此。

检查https://mustache.github.io/mustache.5.html

这样的事情应该起作用:

var obj = {
  data: [{
    _id: 58cb851721c1c107ab436686,
    title: 'some title',
    content: 'this is content'
  }, {
    _id: 58cb856321c1c107ab436688,
    title: 'ah yes',
    content: 'more title and contents'
  },
  ...
  ]};


和模板:

{{#data}}
  <span>{{_id}}</span>
  <span>{{title}}</span>
  <span>{{content}}</span>
{{/data}}

08-04 10:39