javascript - 管理员登录后如何访问网站的其他页面

标签 javascript node.js meteor iron-router

管理员登录后如何访问其他页面。单击其他链接时始终显示仪表板页面。你能检查一下我的代码吗?

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');
});

注意:当我单击用户和订单的链接时,它会显示仪表板。

最佳答案

因为它被 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 并获取下一个有效路由

关于javascript - 管理员登录后如何访问网站的其他页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32066645/

相关文章:

meteor - 从 Meteor.SetTimeout 中调用时访问 this.userId 不起作用

javascript - 同时进行多个 AJAX 调用和连续进行多个 AJAX 调用有区别吗?

javascript - 如果用户未使用 Nodejs 登录,如何添加注销按钮

javascript - 如何将 Observable 流转换为 Observable 数组

javascript - Puppeteer 的 page.click() 正在处理一些链接而不是其他链接

node.js - 在 NestJS 应用程序中的 Newrelic 中注释匿名中间件

android - ♥ 和 ♦ 在 HTML 中在 Android 上显示为黑色,即使颜色在 CSS 中设置为红色

javascript - meteor react 应用程序的座位预订逻辑

javascript - 我在发出 HTTP get 请求时收到 "undefined",但只是第一次

javascript - 使用 Highcharts 和 AngularJs 的实时条形图