假设我有以下计算属性;
someCP: function() {
}.property(obj.innerObj.attr)
我的问题是,即使obj.innerObj没有定义'attr',这会被触发吗?
这个CP如何运作?
答案 0 :(得分:0)
首先,正如评论中已经提到的,依赖键应该是一个字符串:
someCP: function() {
}.property('obj.innerObj.attr')
此外,此代码可能会重写为:
someCP: Ember.computed('obj.innerObj.attr', function() {
})
第一种形式无法保证工作。
对于“触发”,Ember应该在第一次使用时计算属性,而不是缓存它并在依赖属性更改时重新计算。在你的情况下,它永远不会。但是我不确定它在实践中会起作用,但理论上它应该以这种方式工作。