Browse Source

fix(core): add view clear before creating view

add snq to permission guard
pull/2261/head
mehmet-erim 7 years ago
parent
commit
95563de2a4
  1. 1
      npm/ng-packs/packages/core/src/lib/directives/permission.directive.ts
  2. 2
      npm/ng-packs/packages/core/src/lib/guards/permission.guard.ts

1
npm/ng-packs/packages/core/src/lib/directives/permission.directive.ts

@ -34,6 +34,7 @@ export class PermissionDirective implements OnInit, OnDestroy {
.pipe(takeUntilDestroy(this))
.subscribe(isGranted => {
if (this.templateRef && isGranted) {
this.vcRef.clear();
this.vcRef.createEmbeddedView(this.templateRef);
} else if (this.templateRef && !isGranted) {
this.vcRef.clear();

2
npm/ng-packs/packages/core/src/lib/guards/permission.guard.ts

@ -14,7 +14,7 @@ export class PermissionGuard implements CanActivate {
constructor(private store: Store) {}
canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable<boolean> {
let resource = snq(() => route.data.routes.requiredPolicy) || (route.data.requiredPolicy as string);
let resource = snq(() => route.data.routes.requiredPolicy) || snq(() => route.data.requiredPolicy as string);
if (!resource) {
resource = snq(
() => route.routeConfig.children.find(child => state.url.indexOf(child.path) > -1).data.requiredPolicy,

Loading…
Cancel
Save