【发布时间】:2015-01-02 18:20:15
【问题描述】:
我有一个应用程序路由,它在其模型挂钩中获取当前用户(并将其设置为模型)。如果应用程序控制器的模型为空(即用户未登录),我还有应该转换到登录页面的子路由。在这些子路由中,我检查 this.controllerFor('application').get('model') 是否为空。现在,如果用户实际登录,我会看到以下行为。首先,应用程序路由模型钩子起作用并返回用户是预期的。然后,子路由将用户报告为空。然后应用程序控制器中的观察者注意到模型更改为实际用户。我的问题是:为什么子路由的 beforeModel 挂钩会在实际父路由模型更改传播到其控制器之前工作。
如果我将检查放在子路由的 setupController 中,一切正常,但如果路由重定向,则会触发其模型钩子事件,这一点都不好。
访问 modelFor('application') 也不能可靠地工作。
谢谢
【问题讨论】:
标签: ember.js