在Ember中,将属性定义为另一个属性(或另一个对象的属性)的计算别名Ember.computed.alias('otherProperty')似乎与将其定义为使用该属性的绑定具有基本相同的结果propertyNameBinding: 'otherProperty'.
我查看了源代码和文档,但我找不到任何理由为什么一个优先于另一个.显然模板使用绑定,这很好,但对于例如控制器中的属性,或者在视图上引用控制器的属性,是否有区别?
Chr*_*sey 14
可以在extend()上覆盖别名,完全消除与其他键的关系.
一个简短的例子:我有一类与时间相关的函数和类,这些类同时具有unit属性(对于Day,Minute等)和precision属性.通常这些在功能上是相同的.在一两个班级中他们分道扬.. Ember.computed.alias允许precision在unit大多数情况下使用别名,但可以根据需要使用自己的值覆盖.
请注意,create()将使用别名setter,而不是覆盖.
此外,在路径中设置带有空对象的别名可能会爆炸,而如果路径不在任何地方,则绑定将无法同步.
根据*Binding语法的软弃用,请参阅下面的morgoth评论
| 归档时间: |
|
| 查看次数: |
9474 次 |
| 最近记录: |