Ember.js和arrangeContent

时间:2012-10-21 13:16:56

标签: ember.js

任何人都可以向我解释arrangeContent的目的。

文档解释说它可以在子类中重写:

  

代理假装的数组。在默认的ArrayProxy实现中,这个和内容是相同的。 ArrayProxy的子类可以覆盖此属性以提供排序和过滤等内容。

我感到困惑的是它与内容的关系。我可以在源代码中看到它在内容上有一个计算属性:

arrangedContent: Ember.computed('content', function(){
  return this.get('content');
}

我认为我说你永远不应该绑定到内容而是绑定到arrayProxy本身。

我假设对ArrangeContent也一样吗?

我是否只是使用arrangeContent来根据需要过滤数组并绑定到arrayProxy本身或者我错过了什么?

1 个答案:

答案 0 :(得分:11)

您完全正确:在绑定到值或触发addObject等方法时,您应始终将代理本身作为目标。拥有arrangedContent允许Ember操纵集合的属性,如排序顺序或所选项目,而不更改基础数组上的这些属性。

由于单个对象数组可以是应用程序许多部分的基础数据,因此您不一定要更改数组本身。

Jame's Croft有一个很好的指导,谈论代理:http://matchingnotes.com/ember-array-proxy