我试图在转换到给定路线(在本例中为App.UserSettingsRoute
)之前,向用户提示需要确认其密码的模式。我一般都有这个工作(我打开模态并中止beforeModel
挂钩中的转换,并在确认密码后恢复转换),但我遇到了以下问题:
当用户直接输入路线时(通过在地址栏中直接输入URL或在路线中刷新浏览器),我无法打开模态(我收到错误),因为我还没有输入任何路径route yet - 这是在应用程序中输入的第一条路线。我的问题:如何检测到我输入的当前路线是第一个?或者,有更好的方法吗?
答案 0 :(得分:0)
我已经从webcloud实现了这个方法:
http://webcloud.github.io/blog/2014/04/07/emberjs-authentication-the-right-way-javascript-version/
您还可以使用:
App.ApplicationRoute = Ember.Route.extend({
beforeModel: function(transition, queryParams){
// Do auth here...
}
});
无论访问者直接输入您的应用中的哪条路线,此路线始终会被点击。