我有一个Ember应用程序,它有一系列嵌套路由,每个路由都有动态段:
E.g
/ NestedRouteA /的的argA / NestedRouteB /的的argB
在NestedRouteB路由的模型钩子中,我使用argA和argB来查找给定的资源。
我遇到的问题是,当 argB 保持不变时,不会调用模型钩子,但 argA 会发生变化
E.g
如果用户是/ NestedRouteA / 1 / NestedRouteB / 1 ,然后转到NestedRouteA / 2 / NestedRouteB / 1 ,我希望被调用的模型钩子没有。
我是如何强制模型钩子被调用的?
答案 0 :(得分:0)
我在这里创建了一个JS小提琴:
http://jsfiddle.net/ssirowy/P2P9n/1/
App.ParentRoute = Ember.Route.extend({
model: function(params){
return params.parent_num;
}
});
App.ParentChildRoute = Ember.Route.extend({
model: function(params){
var parent = this.modelFor('parent');
var child = params.child_num;
console.log("Retrieving model for parent/child combo");
return new Ember.RSVP.Promise(function(resolve){
setTimeout(function(){
resolve(child);
}, 1000);
});
}
});
当前版本的小提琴使用最新的Ember,并没有显示我之前遇到的问题。
但是,如果使用< = Ember1.5,问题就出现了。
我在项目中升级了,问题就消失了。