设置:
- blah 是我的 ember 应用程序
- find 本质上调用 Ember.$.ajax(url, params, method)
- find 方法不是阻塞调用
- 路由和控制器都没有相互依赖(需求)
问题:
- 我试图弄清楚为什么 ApplicationRoute 中的 setupController(我也尝试过激活)直到我的 ajax 调用从我的 CowRoutes 模型返回之后才被执行。
我尝试过的事情:
- 如果我将代码从 setupController 移动到 CowRoute 的模型中,它们都会并行运行(它们根本不属于这里,特别是因为它们是页眉页脚,我可能会在 CowRoute 旁边找到不同的路由)。
- 我尝试在我的 find 方法上使用 Ember.RSVP.resolve,一切仍然有效,它仍然在串行运行
申请路线
blah.ApplicationRoute = Ember.Route.extend({
// setupController runs If a route handler's context changes
setupController: function () {
this.controllerFor('meta_property').set('model', blah.MetaProperty.find('meta_property'));
this.controllerFor('header').set('model', blah.User.find("user"));
}
牛路
blah.CowRoute = blah.Route.extend({
model: function (params) {
//this.controllerFor('meta_property').set('model', blah.MetaProperty.find('meta_property'));
//this.controllerFor('header').set('model', blah.User.find("user"));
return blah.Cow.find('cow', params);
//return Ember.RSVP.resolve(blah.Cow.find('cow', params));
}