有一个问题,
我想在环境中将 routeIfAlreadyAuthenticated 路由设置为具有基于登录用户的动态段(/:userid / dashboard)的路由。
我该怎么做?
//config/environment.js
ENV['ember-simple-auth'] = {
authorizer: 'authorizer:custom',
routeAfterAuthentication: '/dashboard',
routeIfAlreadyAuthenticated: '/dashboard'
};
答案 0 :(得分:0)
我认为你在config/enviroment.js
文件中没有这种能力。我认为您可以做的是重定向到您拥有的某条路线,并使用该路线重定向到您想要的地方。像:
//config/environment.js
ENV['ember-simple-auth'] = {
authorizer: 'authorizer:custom',
routeAfterAuthentication: '/some-route',
routeIfAlreadyAuthenticated: '/some-route'
};
//router.js
this.route('some-route', { path: '/some-route' });
this.route('user-dashboard', { path: '/:id/dashboard' });
//some-route.js
export default Ember.Route.extend({
userSession: Ember.inject.service(),
beforeModel() {
const user = userSession.get('currentUser');
this.transitionTo('user-dashboard', user);
}
});
此示例假定您拥有某种user-session
服务,您可以.get('currentUser')
登录用户。这样您就可以将该模型传递给transitionTo
方法。
希望它有所帮助。