Luis Reinoso

Freelance developer. I usually give ⭐ on Github (javascript, python, angular 🅰️). Veggie 🥑🍓. Believe In Yourself.
Navegación

Roles en Angular

05 Enero 2020 »
angular

Usar ngx-permissions para validar roles usuarios https://github.com/AlexKhymenko/ngx-permissions

Instalar

npm install ngx-permissions  --save

Agregar al app.module

import { NgxPermissionsModule } from 'ngx-permissions';
...
@NgModule({
  imports: [
    NgxPermissionsModule.forRoot(),
  ]
  ..

En método login


import { NgxRolesService } from 'ngx-permissions';

constructor(private rolesService: NgxRolesService){}

login() {
  this.servicioAuthenticar(user).subscribe((credencialesDelUsuario) => {
    this.rolesService.addRole(credencialesDelUsuario.rol, []);
  })
}

para validar rutas para que accedan según usuario NgxPermissionsGuard fuente: rutas

// permite a differente de tipo rol Externo
{
      path: 'ciudad',
      component: 'CiudadComponent',
      canLoad: [NgxPermissionsGuard],
      data: {
        permissions: {
          except: 'Externo' // Externo es el rol que viene de la base de datos
        }
      }
    },

para validar en la vista *ngxPermissionsOnly fuente: controlling-access-in-views

<ng-container *ngxPermissionsOnly="['Administrador']">
  <button
    type="button"
    (click)="obtenerNombre()"
  >
    Obtener nombre
  </button>
</ng-container>