计算属性中的“ property。[]”和“ property”有什么区别

时间:2019-12-17 13:50:40

标签: javascript ember.js

通过 ember.js ,使用计算的属性,我可以使用以下任一方法:

myProp: computed('properties', function () { /* do stuff. */ });

或者这个:

myProp: computed('properties.[]', function () { /* do stuff. */ });

这两种方法有什么区别?在什么情况下应该使用哪一个?

1 个答案:

答案 0 :(得分:1)

第一个(properties)只看properties。因此,当您执行this.set('properties', ...)时,它将失效。

第二个用于数组,当您删除或添加数组项时将无效:

this.set('properties', ...);
this.properties.pushObject(...);
this.properties.popObject(...);

因此,当您只执行'properties'时,当您在数组中添加或删除某些内容时,它不会无效。

相关问题