在Ember手柄中使用嵌套的每个块时的上下文绑定

我只是偶然发现了emberJS,并认为值得为我的下一个Web应用程序尝试它。

我实际上打算做的是以二维方式显示对象列表(atm可以是表格)。

我到目前为止:

<script type="text/x-handlebars">
<table width="100%" style="text-align:left">
  <tr>
    <th>
    </th>
    {{#each App.MyController.getColumnValues}}
      <th>{{this}}</th>
    {{/each}}
  </tr>
  {{#each App.MyController.getRowValues}}
    <tr>
      <th>{{this}}</th>
      {{#each App.MyController.getColumnValues}}
        {{view App.CountView rowBinding="this" columnBinding="../this"}}
      {{/each}}
    </tr>
  {{/each}}
</table>
</script>

并为countView:

<script type="text/x-handlebars" data-template-name="countView">
  <td>{{view.row}} - {{view.column}}</td>
</script>

正如你可能看到的,我想要一个表格在每个单元格中有当前列和行的值。 除了columnBinding之外,一切都正常。 正如我在Handlebars的页面上所看到的{{../ this}}是解决父模板范围的方法。 在两个花括号中(没有为它创建一个额外的视图,这工作相当好,但我后来需要调用一个函数,将列和行值传递给它,并且认为(使它清晰),在这一点上视图会很好。

任何想法如何访问父模板范围并将其传递给countView?


为了避免混淆,您可以在{{each}}块中始终使用变量,因为在这种情况下,您可以尝试这种方式:

{{#each row in App.MyController.getRowValues}}
  <tr>
    <th>{{row}}</th>
    {{#each column in App.MyController.getColumnValues}}
      {{view App.CountView rowBinding="row" columnBinding="column"}}
    {{/each}}
  </tr>
{{/each}}

让我知道这是否有帮助...

链接地址: http://www.djcxy.com/p/61585.html

上一篇: Context binding while using nested each blocks in Ember Handlebars

下一篇: Handlebars helpers in Ember.js