angular - 在 Angular 4+ 中处理两个 URL(矩阵 && 查询)参数

标签 angular routing angular2-routing query-string

目前我们在我的 Angular 4+ 应用程序中使用矩阵参数。 Google Analytics 在使用 ; 读取 URL 时出现问题,因此我们决定将其更改为查询参数。然而,旧符号(矩阵)必须可访问并重定向到新符号并将此类事件保存到数据库中。

我看到三种可能的解决方案:

  1. 使用自定义 URL 序列化器/解析器,它将使用正则表达式将矩阵转换为查询,保存到数据库并进行重定向
  2. 使用某种具有相同功能的路由守卫
  3. 使用专用组件来处理此功能

虽然第三种方式肯定是最后的选择,但我很难预测剩下的两种方式中哪一种会更好。

最佳答案

我会同时使用第一个和第三个解决方案。

我要使用的组件是 AppComponent,因为它是应用程序中的最高层组件。

然后,我将解析 URL,检测它是否是矩阵表示法,如果是,则将其转换为查询参数表示法。

然后,我会使用查询参数符号将用户重定向到他要求的页面。

关于angular - 在 Angular 4+ 中处理两个 URL(矩阵 && 查询)参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49874364/

相关文章:

python - 将单个模型路由到 Django 中的备用数据库

node.js - Angular2 通知与路由器导航链接

angularjs - Angular2 如何在 Guard 中获取目标 URL?

css - 将输入宽度动态扩展到字符串的长度

angular - 是否有类似于 withLatestFrom 但带有参数的 RxJS 运算符?

angular - RxJs:条件为真时缓冲事件,条件为假时传递事件

angular - 在 Protractor 中模拟日期

php - Symfony 路由组件不路由 url

Angular 4 - Routes - 如何创建一个单独的模块来管理路由并在 app.module.ts 文件中使用它

typescript - Angular 2 RC4 路由器提供商