私は、列挙可能なmixinが'[]'
プロパティに依存する計算されたプロパティを持っていることに気付きました。一方、ember配列も'@each'
プロパティを持っています。ember.jsの '[]'プロパティと '@each'プロパティの違いは何ですか?
'[]'
と'@each'
の違いは何ですか?
私が間違っていると私を曖昧に理解すると、アレイの内容が置き換えられたときに'[]'
がトリガーされます。しかし、それは財産そのものに依存するよりも違うのでしょうか?
は、以下のクラス考えてみましょう:
C = Ember.Object.extend({
things: null,
watcher1: (function() {
console.log('watcher1')
}).observes('things.[]'),
watcher2: (function() {
console.log('watcher2')
}).observes('[email protected]')
});
を、次のように、私はインスタンスを作成します。
c = C.create({things: Ember.A(['a', 'b'])});
次
c.get('things').replace(0, 1, ['z'])
はwatcher1
とwatcher2
そして、次のとおり行い
c.get('things').setObjects(['1', '2'])
もwatcher1
とwatcher2
をトリガー:
c.get('things').addObject('v')
だからどんな違いがあるのでしょうか?いつ他のものを使うべきですか?
ありがとうございます! ケビン
ありがとうございます!非常に徹底した、私はjsbinsに感謝します。 –
現行の公式文書 - http://emberjs.com/api/classes/Ember.Array.html#property__eachは、いつどのファイルを使用するかを明確にしています。 –