首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >检查UserRole并发送到唯一的主页url

检查UserRole并发送到唯一的主页url
EN

Stack Overflow用户
提问于 2016-07-01 05:31:33
回答 1查看 29关注 0票数 0

当用户登录到他们的帐户时,我想检查用户的角色,并将他们引导到合适的主页。角色是由meteor-roles设置的,我使用的是flow-router。目前,这只是抛出了一个触发器错误:

代码语言:javascript
复制
Exception from Tracker recompute function:
TypeError: Cannot read property 'roles' of undefined

是否可以访问路由器文件中的roles

路径:Routes.js

代码语言:javascript
复制
FlowRouter.route("/", {
  name: 'home',
  action: function() {
    var user = Meteor.user();
    var userRole = user.roles;

    if (userRole == 'is_student') {
      FlowRouter.go('profileNew');
    } else if (userRole == 'is_teacher') {
      FlowRouter.go('profile');    
    } else {
      FlowRouter.go('profileAdmin');
    }
  }
});
EN

回答 1

Stack Overflow用户

发布于 2016-07-01 22:07:15

var user = Meteor.user();// app刚刚启动,您没有登录

var userRole = user.roles;//此时用户未定义,如何获取角色?这就是它抛出错误的原因。

所以你可以像这样管理这个So:

代码语言:javascript
复制
FlowRouter.route("/", {
  name: 'home',
  action: function() {
    var user = Meteor.user();
    if(user){
       var userRole = user.roles;
       if (userRole == 'is_student') {
           FlowRouter.go('profileNew');
       } else if (userRole == 'is_teacher') {
           FlowRouter.go('profile');    
       } else {
          FlowRouter.go('profileAdmin');
       }
    }
  }
});
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38133616

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档