【发布时间】:2017-05-10 14:24:45
【问题描述】:
我有一个菜单,其中包含仅对某些用户可见的部分。我的数据库中有角色用户、角色 admin1 和角色 admin2。 例如,如何使类别 2 仅对 ROLE_ADMIN1 可见?
知道我的用户可以同时拥有多个角色或所有角色。如下所示,每个用户都有 ROLE_USER 角色,但唯一的区别是 ROLE_USER 只能是 ROLE_USER、ROLE_ADMIN1 或 ROLE_ADMIN2,或同时是两者。
{
"name": "Jack",
"fname": "Daniel",
"roles": [
"ROLE_USER"
]
}
{
"name": "Laly",
"fname": "Dom",
"roles": [
"ROLE_USER",
"ROLE_ADMIN1"
]
}
{
"name": "Admini",
"fname": "Strator",
"roles": [
"ROLE_USER",
"ROLE_ADMIN2"
]
}<br><br> {
"name": "Admini",
"fname": "Strator",
"roles": [
"ROLE_USER",
"ROLE_ADMIN1",
"ROLE_ADMIN2"
]
}
我的html:
<ion-item class="item-stable animsvdj" ng-click="toggleGroup(group)" ng-class="{active: isGroupShown(group)}">
<i class="icon" ng-class="isGroupShown(group) ? 'ion-android-contacts' : 'ion-android-contacts'"></i>
Category
</ion-item>
<ion-item class="item-accordion menu-border" ng-show="isGroupShown(group)" ui-sref="menu.disponibilites" menu-close=""><i class="ion-ios-calendar-outline menu-icon"></i> Category 1</ion-item>
<!-- Part that should be visible only by admin -->
<ion-item class="item-accordion menu-border" ng-show="isGroupShown(group)" ui-sref="menu.organiseVisite" menu-close=""><i class="ion-ios-time-outline menu-icon"></i> Category 2</ion-item>
<!-- Part that should be visible only by admin -->
<ion-item class="item-accordion menu-border" ng-show="isGroupShown(group)" ui-sref="menu.trouverUnJeune" menu-close=""><i class="ion-ios-eye-outline menu-icon"></i> Category 3</ion-item>
在我的控制器中:
.controller('menuCtrl', function($scope, $state, $http, $ionicHistory, AppService) {
$scope.group = [];
$scope.toggleGroup = function(group) {
if ($scope.isGroupShown(group)) {
$scope.shownGroup = null;
} else {
$scope.shownGroup = group;
}
};
$scope.isGroupShown = function(group) {
return $scope.shownGroup === group;
};
})
谢谢大家!
【问题讨论】:
-
json 是从哪里来的?我会从后端返回可用的菜单项并使用 Angular 的等效 for 循环绑定。
-
什么是“isGroupShown”?我没有看到它的功能。
标签: javascript angularjs