提问者:小点点

Ember. js:itemController中的参考索引


在车把模板中,我可以像这样引用{{#each}}助手的索引:

{{#each}}
    {{@index}}
{{/each}}

{#each}}
    {{_view.contentIndex}}
{{/each}}

如果我使用的是itemController,如何从itemController获取对索引的引用?

{{#each itemController="item"}}
    {{foo}}
{{/each}}

App.ItemController = Ember.ObjectController.extend({
  foo: function() {
   // how to get a reference to the index here?
   // this.get('@index') doesn't work
   // this.get('index') doesn't work
  }.property()
});

共1个答案

匿名用户

您可以访问父母控制器并使用indexOf获取当前项目的索引。

App.ItemController = Ember.ObjectController.extend({
  foo: function() {
    return this.parentController.indexOf(this);
  }.property('parentController.[]')
});

示例:http://emberjs.jsbin.com/sokukihe/1/edit