1

当用户未通过身份验证时,我需要系统地重定向到登录页面。为此,beforeModel在应用程序中路由似乎是最好的选择,但似乎beforeModel不是所有转换触发,不像willTransition总是被调用的,但是当路由退出时,没有进入......

例如,beforeModel手动更改 URL 时不调用。

我读过这个要点,它解释了willTransition总是被调用的,我确认了,但它没有解释是否beforeModel应该总是被调用,以及在什么条件下。

我使用的是 Ember 1.2.0 beta 3,但我对 1.1.2 也有同样的问题,登录重定向实际上是由ember-simple-auth处理的(我在 repo 上的问题:#27)。

有人可以解释什么时候应该beforeModel打电话吗?

注意:我在 Ember Discuss 上问过同样的问题,但没有答案。

4

1 回答 1

1

我在 1.1.0-beta.4 和 beforeModel 工作正常。在任何情况下都应该调用 beforeModel,例如 URL 更改或模型转换(例如,通过链接到)。如果我们使用链接到控制器或从控制器转换,则模型钩子是跳过者。

获取更多信息和帮助调试设置 LOG_TRANSITIONS

App = Ember.Application.create({
  LOG_TRANSITIONS: true
});
于 2013-11-08T22:04:28.793 回答