Angular身份验证守卫在返回Promise<UrlTree>时未重定向。
创始人
2024-10-29 10:01:06
0

问题描述:当Angular身份验证守卫返回Promise时,重定向不起作用。这可能是由于Observable而不是Promise导致的。

在Angular中使用Promise时,您可以使用toPromise()方法将Observable转换为Promise。然后,您可以在身份验证守卫中使用Promise来重定向路由。

以下是示例代码,显示如何重定向路由:

import { Injectable } from '@angular/core';
import { CanActivate, Router } from '@angular/router';
import { Observable } from 'rxjs/Observable';
import 'rxjs/add/operator/toPromise'; // add this import statement

@Injectable()
export class AuthGuard implements CanActivate {

  constructor(private router: Router) {}

  canActivate(): Promise {
    if (userLoggedIn) { // check if user is logged in
      return Promise.resolve(true);
    } else {
      // redirect to login page
      return this.router.navigate(['/login']).then(() => false);
    }
  }
}

在上面的示例代码中,我们将Observable转换为Promise并使用Promise来重定向到登录页面。使用toPromise()方法进行Observable到Promise的转换,并使用返回的Promise在路由上调用navigate()。这确保了可以正确的重定向路由。

相关内容

热门资讯

黑科技了解(Wepoke必胜)... 黑科技了解(Wepoke必胜)epoker原本真的是有挂!太实锤了本来是有挂(2025已更新)(哔哩...
黑科技游戏(WPK私人房)传奇... 黑科技游戏(WPK私人房)传奇扑克总是有挂!太无语了从前是真的有挂(2020已更新)(哔哩哔哩);(...
黑科技安装(wpk猫腻)微扑克... 黑科技安装(wpk猫腻)微扑克游戏原来有挂!太坑了原先有挂(2020已更新)(哔哩哔哩);支持2-1...
黑科技肯定(Wepoke实锤)... 黑科技肯定(Wepoke实锤)wpk德州扑克素来存在有挂!太坑了总是是真的有挂(2024已更新)(哔...
黑科技脚本(德扑之星记分牌)w... 黑科技脚本(德扑之星记分牌)wEpoKe原本存在有挂!太离谱了其实是真的有挂(2020已更新)(哔哩...
黑科技辅助挂(Wepoke胜率... 黑科技辅助挂(Wepoke胜率)欢乐棋牌起初真的是有挂!太离谱了往昔真的是有挂(2021已更新)(哔...
黑科技插件(德扑输赢)云扑克c... 黑科技插件(德扑输赢)云扑克cloudpoker果然有挂!太嚣张了原先真的是有挂(2025已更新)(...
黑科技好友(wpk挂)微扑克总... 黑科技好友(wpk挂)微扑克总是存在有挂!太无语了果然真的是有挂(2023已更新)(哔哩哔哩)1、让...
黑科技游戏(Wepoke内置)... 黑科技游戏(Wepoke内置)pokerrrr2俱乐部一向有挂!太嚣张了素来是有挂(2024已更新)...
黑科技智能ai(aapoker... 黑科技智能ai(aapoker苹果版)德州nzt起初存在有挂!太离谱了好像真的是有挂(2021已更新...