Angularjs   发布时间:2022-04-20  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了Angular 2 authguard相对重定向大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
有没有办法在authguard中使用相对路径模式重定向

我试过了

@Injectable()
export class ServerAuthGuard implements CanActivate {
    constructor(private _router: Router,private _route: ActivatedRoutE) {
    }

    canActivate(route: ActivatedRouteSnapshot): Boolean {
        this._router.navigate(['../../servers/'],{relativeTo: this._routE});

        return false;
    }
}

应该从/ projects / 2 / servers / 71重定向到/ projects / 2 / servers /但是它总是将它重定向到/ servers(当我在组件中执行相同操作时它工作正常).

解决方法

relativeTo也应该接受ActivatedRouteSnapshot,看起来这可能被忽略了,同时这里有一个解决方法

canActivate(
    next: ActivatedRouteSnapshot,state: RouterStateSnapshot): Observable<Boolean> | Promise<Boolean> | Boolean {
      // if(...) {
        const segments = state.url.split('/');
        segments.pop();
        segments.shift();
        this.router.navigate(segments);
      // } else {
      //   return true;
      // }


}

大佬总结

以上是大佬教程为你收集整理的Angular 2 authguard相对重定向全部内容,希望文章能够帮你解决Angular 2 authguard相对重定向所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。