在我的应用程序中,我在用户登录后正在预加载所有必需的模型。除了在我调用store.all
而不是store.find
时加载路由不起作用时,一切都很好。
App.PhrasesRoute = Ember.Route.extend
model: ->
return @store.all("phrase")
模型Phrase
有很多记录(有时甚至是一千个),每个记录都显示在车把的每个循环中。大约需要一半的时间。用户在这段时间内只能看到短暂的滞后。
每次用户调用路由时从服务器获取所有数据时都不会出现此问题。
App.PhrasesRoute = Ember.Route.extend
model: ->
return @store.find("phrase")
我认为store.all没有返回任何承诺。如何从store.all
或deley返回模型手动返回?
答案 0 :(得分:1)
App.PhrasesRoute = Ember.Route.extend({
model: function() {
var self = this;
return new Ember.RSVP.Promise(function(resolve) {
Ember.run.later(this, function() {
resolve(self.store.all('phrase'));
}, 1000);
});
}
});