我在 Meteor 中使用 FlowRouter。
在某些页面上,我想检查用户是否登录,所以我做了一个 triggerEnter 功能
const isAuthenticatedRedirect = ( context, redirect, stop ) => {
if ( ! Meteor.loggingIn() && ! Meteor.userId() ) {
FlowRouter.go( 'login' );
}
};
const isAuthenticatedRoutes = FlowRouter.group( {
name: 'isAuthenticated',
triggersEnter: [ isAuthenticatedRedirect ]
} );
问题在于它将用户重定向到/login
而不是仅仅显示登录模板。
我可以在所有页面上做一个 if 语句,然后如果用户没有登录,则显示登录而不是真实页面,但我想直接在路由器中这样做会更聪明。