我有2个数组。
一个有通缉表列scheme = ['username', 'email', 'created'];
第二个是数据:
data = [{ username: "...", email: "...", created: '...', gender: '...' }, {...} ...];
我想渲染一个这样的表:
username email created
... ... ...
... ... ...
... ... ...
... ... ...
... ... ...
... ... ...
... ... ...
... ... ...
... ... ...
我在节点中使用带有快速的把手。
答案 0 :(得分:2)
我做到了:)。关键是要使用车把助手。写一个帮手真的很容易。所以这是我的:
var hbs = require('hbs');
hbs.registerHelper('getByKey', function(data,key) {
return data[key];
});
(别忘了,我在nodejs中)。
所以在我有了帮助器并且数据数组中充满了对象之后,我知道我想要的属性的名称是结束代码:
<h1>List data</h1>
<table class="table" border="1">
<thead>
<tr>
<td><b>id</b></td>
{{#each scheme.listDisplay}}
<td><b>{{this}}</b></td>
{{/each}}
</tr>
</thead>
{{#each data}}
<tr>
<td>
{{id}}
</td>
{{#each ../scheme.listDisplay}}
<td>{{#getByKey ../data this}}{{/getByKey}}</td>
{{/each}}
</tr>
{{/each}}
</table>
答案 1 :(得分:1)
这对你有用。只需将此脚本插入到您想要的表的任何位置即可。
var header = ["Column 1", "Column 2", "Column 3"];
var content = [["blah", "blah", "blah"],["ha","ha","ha"]];
document.write("<tr>");
for (i=0;i<header.length;i++) {
document.write("<td>"+header[i]+"</td>");
}
document.write("</tr>");
for (i=0;i<content.length;i++) {
document.write("<tr>");
for (f=0;f<content.length;i++) {
document.write("<td>"+content[i][f]+"</td>");
}
document.write("</tr>");
}