我在我的应用程序中使用
Ember simple auth并且它运行良好,但我遇到了一个我无法绕过的情况.
该库允许您通过覆盖routeAfterAuthentication:’index’来指定成功验证后重定向到的路由.这工作正常,但是,我发现自己处于一种我希望有两种不同类型的重定向的情况.当用户首次登录时,我希望他们转到/ dashboard,但是当他们首次注册并进行身份验证时,我希望他们进行/设置.
我希望在成功创建帐户后能够执行类似的操作,但它仍在尝试使用routeAfterAuthentication选项进行转换:
var _this = this; this.set('identification',_this.get('email')); this.set('password',password); this.send('authenticate',function() { _this.transitionToRoute('settings'); },function() {});
有没有办法在一次性验证后指定要转换到哪条路线?也许有更好的方法来记录某人创建帐户后无需通过authenticate()方法?
解决方法
您可以简单地覆盖sessionAuthenticated
method in the application route并实现您自己的逻辑.请注意,默认实现并不总是转换为routeAfterAuthentication–如果会话中存储了先前截获的转换,则sessionAuthenticated将重试该转换.