管理员登录时如何访问其他页面。当我点击其他链接时,始终显示信息中心页面。你能检查一下我的代码吗?
Router.onBeforeAction(function() {
if (!Meteor.user()) {
this.render('login');
} else {
this.render('dashboard');
}
});
Router.route('users', function() {
this.render('users');
});
Router.route('orders', function() {
this.render('orders');
});
注意:当我点击用户和订单链接时,它会显示我的仪表板。
答案 0 :(得分:1)
因为它被onBeforeAction
截获,你应该做这样的事情:
编辑:使用您需要的https://github.com/alanning/meteor-roles:
Router.onBeforeAction(function() {
if (!Roles.userIsInRole(Meteor.user(), ['admin'])) {
if (!Meteor.user()) {
this.render('login');
} else {
this.render('dashboard');
}
}
});
因此,如果用户是管理员,则会传递onBeforeAction
并获取下一个有效路径