angular - 路由 URL 不像以前在 Angular 7 中那样工作

标签 angular angular-ui-router angular2-routing angular7 query-string

路由模块路径配置

{ path: 'invite/:token', component: PreAuthComponent },

以前我们使用的是

localhost:4200/#/invite/?key=12345

但是更新到 Angular 7 后,它没有同时采用/?合并并且无法导航。如何使用上面提到的相同配置来实现这一点。

当前工作 URL 具有不同的配置

{ path: 'invite/:token', component: PreAuthComponent }

localhost:4200/#/invite/12345

{ path: 'invite', component: PreAuthComponent }

localhost:4200/#/invite?key=12345

最佳答案

根据Locationstrategy ,您可以通过在 RouterModule.forRoot() 方法中设置 useHash: true 来更新 LocationStrategy,如下所示。

RouterModule.forRoot(routes, { useHash: true })  // .../#/crisis-center/

顺便说一下,Angular 中的路由参数(“/feature/:id”)和查询参数(“feature?key=value”)非常不同。路由参数可用于路由并由组件处理。通常,查询参数仅在 NgComponent 中处理。

关于angular - 路由 URL 不像以前在 Angular 7 中那样工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55136347/

相关文章:

javascript - Angular Highcharts 动态 x 轴不工作

添加查询参数时,Angular 5 路由器不匹配

javascript - Angular UI-router - 在更多状态下保留 url 参数

angularjs - 使用 Angular UI 路由器在 URL 中设置动态参数

javascript - 如何使用 Angular 路由?

angular - TemplateRef 项目每次集合更改时都会被销毁

angular - 在 View 中使用@input Observable 但组件中的管道函数被忽略

node.js - 带参数的 Angular 和 NodeJS GET 请求 url 仅返回响应对象,无组件 HTML

javascript - 错误 : Uncaught (in promise): Error: Cannot match any routes RC4 Child Routes

angular - 为什么 Angular 2 Route 仅获取单个 templateUrl