我试图学习expressjs,我有一个查询db的控制器,并返回一个类似于这样的JSON对象:
[ { _id: 58cb851721c1c107ab436686,
title: 'some title',
content: 'this is content' },
{ _id: 58cb856321c1c107ab436688,
title: 'ah yes',
content: 'more title and contents' }
...
...
]
我现在要做的是在MDL卡布局中显示数组中的每个元素。因此,如果上面的json对象有20个对象,那么应该有20张卡片,每张卡片显示各自_id
,title
和content
属性的值。要做到这一点,我必须使用像这样的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');
是否有可能在霍根这样做,怎么样?或者我需要在我的路线上做一些体操?
答案 0 :(得分:1)
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}}