После входа пользователя в систему я сохраняю его данные в localStorage, в сервисе.Исходя из этого, мне нужно настроить меню с разрешениями каждого пользователя.Каждый пункт меню находится в модуле BlurAdmin.Я могу восстановить данные, однако не могу скрыть ссылку, если у пользователя нет разрешения.Вот код:
(function() {
'use strict';
angular.module('BlurAdmin.pages.dashboard', [])
.config(routeConfig);
/** @ngInject */
function routeConfig($stateProvider) {
$stateProvider
.state('dashboard', {
resolve: {
user: function(baSidebarService, $q){
var user = JSON.parse(baSidebarService.getStorage());
console.log(user)
var roles = ["GERENTE","ADMIN"];
user.roles.forEach(function(role){
if(roles.includes(role.nome)){
console.log('ok')
}
else{
return;
}
})
}
},
// if baSidebarService.getStorage() == true
url: '/dashboard',
templateUrl: 'app/pages/dashboard/dashboard.html',
title: "Dashboard",
sidebarMeta: {
icon: 'ion-android-home',
order: 0,
},
});
}
})();
Обратите внимание, что в цикле я проверяю, совпадают ли пользовательские данные с правилами.Проблема в том, что, хотя я проверяю, что они разные, я не могу скрыть ссылку Dashboard.Я уже все перепробовал, но безуспешно.
Как я могу это сделать, например, в зависимости от данных localStorage:
// if baSidebarService.getStorage() == true
url: $scope.dashboard,
templateUrl: $scope.template,
title: $scope.title,
sidebarMeta: $scope.sidebar,