4

在正确设置我的观察者时遇到问题。下面的代码可以正常工作,因为它似乎正确地观察了长度属性。但是,它在页面加载时反复触发,这不是我所期望/想要的。有没有办法在完全加载时添加这个观察者?

App.PlaylistController = Ember.ObjectController.extend({
  songsChanged: function() {
   // some behaviour
  }.observes('content.songs.length'),
});

对于它的价值, this.get('content.isLoaded'); 加载页面时返回 true

App.PlaylistController = Ember.ObjectController.extend({
  songsChanged: function() {
   this.get('content.isLoaded');
  }.observes('content.songs.length'),
});
4

1 回答 1

0

您可以分别使用Ember.Observable.addObserverEmber.Observable.removeObserver在 ember 中动态添加和删除观察者。

在您的情况下,您可能想要观察“content.isLoaded”属性,然后在观察者中使用提到的 addObserver 函数动态添加“content.songs.length”观察者。

于 2014-10-31T20:34:37.773 回答