所以我已经使用纯基于令牌的方法成功实现了 Ember-Auth。我想在我的用户登录后将他们重定向到我的应用程序的根目录。
我知道我可以使用actionRedirectable
(文档中的http://ember-auth.herokuapp.com/docs),但是由于我使用的是纯令牌方法并且没有在 cookie 中存储任何内容,因此我每次页面都有效地再次登录我的用户使用 a 刷新remember_token
(这似乎不理想,但我很快就会解决)。这意味着 usingactionRedireactable
意味着每次用户刷新页面时我都会重定向。也许某处存在反模式?
无论如何,这是我的SignInView
:
App.SignInView = Ember.View.extend({
templateName: 'auth/sign_in',
email: null,
password: null,
submit: function(event, view) {
event.preventDefault();
event.stopPropagation();
App.Auth.signIn({
data: {
email: this.get('email'),
password: this.get('password')
}
});
}
});
如果我this.get("controller").transitionToRoute('...')
在 signIn 调用之后直接调用,那么此时我的用户总是没有登录,因此他们会再次被重定向到登录页面。如果我尝试:
App.Auth.on('signInSuccess', function() {
// ...
});
那么我没有任何明智的方式来访问路由器进行转换。任何聪明的想法将不胜感激。谢谢!