0

我有一个 Ember.ArrayController 从路由中获取它的模型并应用一些排序。
例子:

App.IndexRoute = Ember.Route.extend({
model: function() {
    return [Ember.Object.create({id: 23, name: "John"}),
            Ember.Object.create({id: 534, name: "Warren"}),
            Ember.Object.create({id: 234, name: "Katy" })
     ];
  }
});

App.IndexController = Ember.ArrayController.extend({
    sortProperties: ["id"],
    sortAscending: true

});

当我调用相应的模板并遍历 IndexController 时,排序的内容会按预期显示。
但是,如果我在另一个控制器中检索此控制器的内容this.get("controllers.index.content");并将其显示在其模板中,则不会应用排序。这是为什么?我认为这this.get("controllers.index.content");将检索到与content原始控制器检索相同的内容,因此是排序后的内容。我怎样才能在另一个控制器上检索相同的排序内容?
这是一个示例jsfiddle
谢谢!

4

1 回答 1

1

对已排序的内容使用 mappedContent 属性,而不是 content:

this.get("controllers.index.arrangedContent");
于 2013-06-11T21:52:42.250 回答