我试图理解setupController和model钩子,它们只会在动态段的情况下被调用吗?
这是我的路由器配置,我看到应用程序工作正常,但我没有看到这些钩子被执行:
// Router, this need to connect view and controller
App.Router.map(function(){
this.resource("login", {path : "/"});
this.resource("home" , {path : "home/:home_id"});
});
App.Router.IndexRoute = Ember.Route.extend({
setupController:function(controller,model){
console.log("in setupController hook for index route");
}
});
App.Router.LoginRoute = Ember.Route.extend({
setupController:function(controller,model){
console.log("in setupController hook for login route");
}
});
App.Router.HomeRoute = Ember.Route.extend({
setupController:function(controller,model){
console.log("in setupController hook for login route");
}
});
Run Code Online (Sandbox Code Playgroud)
假设您正在使用最新的余烬(1.0.0-RC.1)您应该像这样定义您的路线:
App.HomeRoute = Ember.Route.extend({
...
});
Run Code Online (Sandbox Code Playgroud)
他们是你的一部分,App没有这Router部分.
作为注释model和setupController钩子行为:
在路径中,model仅在直接导航到包含动态段的URL时才会调用.传入的参数model用于使用动态段检索该路径的模型.
如果使用{{#linkTo route myObject}}或transitionTo(myObject)调用到达路由,则传递的对象用于setupController直接调用model而不调用.
该setupController钩子都会被调用的路径进入的时间
| 归档时间: |
|
| 查看次数: |
6082 次 |
| 最近记录: |