【问题标题】:Upgrade from Angular 13 to 14 - routing problem -Error: NG04014从 Angular 13 升级到 14 - 路由问题 - 错误:NG04014
【发布时间】:2022-08-22 00:29:35
【问题描述】:

我收到此错误错误:NG04014:路由配置无效\'inspect//\':redirectTo 和canActivate 不能一起使用。重定向发生在激活之前,因此 canActivate 永远不会被执行。将 Angular 13 升级到 14 后。有人可以帮忙吗?

  • 你找到解决方法了吗?

标签: routes angular14upgrade


【解决方案1】:

我认为这与验证路由器延迟加载的配置有关,该配置在Angular 14 Router breaking changes 中列出:

延迟加载的配置现在也像初始路由集一样在加载后进行验证。具有无效路由配置的延迟加载模块现在将出错。请注意,这仅在开发模式下完成,因此此更改不会影响生产。

我认为您有两种选择可以正确处理它:

  1. 通过返回 UrlTree 来处理守卫中的重定向:

    如果任何守卫返回一个 UrlTree,则取消当前导航 并且从守卫返回的 UrlTree 开始新的导航。 https://angular.io/api/router/CanActivate

    1. redirectTo 中指定的路由上移动/应用canActivate 防护,而不在同一路由上应用它。

【讨论】:

    猜你喜欢
    • 2022-08-17
    • 2022-09-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-03-03
    • 2022-12-02
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多