我在MySql中设置了几个角色,我想使用该功能 navbar.html中的isInAnyRole,以便为具有角色' ROLE_USER'的用户显示菜单。和ROLE_SUPERVISOR'。
我已经通过isInAnyRole替换isInRole(' ROLE_USER')[[' ROLE_USER',' ROLE_SUPERVISOR'])。
但是没有调用isInAnyRole,也没有显示任何菜单。
使用isInAnyRole函数的好方法是什么?
由于
<ul class="nav navbar-nav nav-pills">
<li ng-switch-when="true" class="dropdown-hover" ng-class="{active: $state.includes('user')}" ng-show="isInAnyRole(['ROLE_USER','ROLE_SUPERVISOR'])">
和
isInAnyRole: function (roles) {
if (!_authenticated || !_identity.roles) {
return false;
}
for (var i = 0; i < roles.length; i++) {
if (_identity.roles.indexOf(roles[i]) !== -1) {
return true;
}
}
return false;
}
答案 0 :(得分:1)
你正在使用旧版本的JHipster,从版本2.7.0开始,我们提供了一个指令authority.directive.js,它完全符合你的要求。您应该考虑升级您的应用。