コレクション全体をロードし、毎回サーバーへのラウンドトリップを行わずに一度に1つずつモデルとして使用するレコードを切り離したい。Model.find()。then()レコードが実際にロードされる前に呼び出される
Ember.Deferredを使用して約束を返す方法を知りましたが、適切なタイミングで解決する約束を得ることができません。次のコードは、単に「発見0」史上時間出力:私はのsetTimeout()で、その後の身体を包む、それは数秒を待たせる場合
App.PersonRoute = Ember.Route.extend({
model: function(params) {
var name = "Erik";
var promise = Ember.Deferred.create();
App.people = App.Person.find();
App.people.then(function() {
console.log('Found ' + App.people.get('length'));
var person = App.people.findProperty('name', name)
promise.resolve(person);
});
return promise;
}
});
、すべてが素晴らしい作品。
何らかの理由でバインドできる別のイベントはありますか?私はApp.people.on( 'isLoaded')を試しましたが、isLoadedは常にtrueです。
ありがとうございます!