首页 > 解决方案 > 使用 useHash 时在 Angular 中捕获哈希路由:false

问题描述

我们正在运行的应用程序的当前版本useHash: true在其app-routing.module.ts. 在我正在开发的新版本中,我没有这样做(主要是因为我什至没有意识到这一点)。

由于使用该应用程序的一般路线已更改,因此我想显示某种信息消息,然后将用户转发到“新且正确”的路线,以便在用户访问先前版本的 URL 时使用。

该应用程序通常使用浏览器书签访问,其中包含应用程序中使用的 ID 和其他参数。我的计划是以旧应用程序的格式在所有 URL 下显示这个(我们称之为migration-information组件),检索参数并将用户转发到新 URL。

但是我注意到,在使用useHash: false(默认)时,我根本无法捕获以开头的路由#,而是**触发了通配符路由 ( )。

即使不在应用程序的其他地方使用哈希路由,有什么方法可以捕获它们吗?我试图#在遗留路由之前明确设置 a ,但这并没有导致任何结果。

是使用useHash: true唯一的方法来处理这个问题吗?

标签: angularroutes

解决方案


推荐阅读