0

我有 2 个对象results,并且headersheaders_.keys(result[0])

r{
  data:{
    headers:['head1','head2']
    result:[
      {head1:'content1',head2:'content2'}
      {head1:'content3',head2:'content4'}
      {head1:'content5',head2:'content6'}
    ]
}

我必须动态地创建一个表,所以我创建了这个:

<table class="ui celled table segment">
  <thead>
    <tr>
    {{#headers}}
    <th>{{.}}</th>
    {{/headers}}
  </tr></thead>
  <tbody>
    {{#result:i}}
    <tr>
      {{#headers:h}}
        <td>{{????}}</td> <-- Here is where I fail to know what to put into
      {{/headers}}
    </tr>
    {{/result}}
  </tbody>
</table>

谁能帮我填空。所以我可以创建一个表格来显示contents

如果我删除了{{#headers}}零件并且我已经知道这些元素<td>{{.head1}}</td>可以完美地工作,那么问题是我正在动态生成不同的对象。

4

1 回答 1

0
{{#result:i}}
  <tr>
    {{#headers:h}}
      <td>{{result[i][this]}}</td> 
    {{/headers}}
  </tr>
{{/result}}

这样做的原因是数组<td>中的每个项目都重复了headers,因为它在一个headers部分内 - 到目前为止,很明显。因此,我们可以使用this来引用当前标题(head1head2)。诀窍是获取对当前行的引用 - 因为您已经创建了i索引引用,我们可以使用result[i]. 因此result[i][this]

这是一个演示小提琴:http: //jsfiddle.net/rich_harris/dkQ5Z/

于 2014-03-25T02:57:04.943 回答