【问题标题】:Change angular router URL scheme更改角度路由器 URL 方案
【发布时间】:2018-10-25 10:47:10
【问题描述】:

当我尝试将一些参数传递给我的 URL 时,角度路由器会提供一些我不太喜欢的 URL 方案。

this 示例中的 URL 如下所示:

https://whatever.io/crisis-center;id=2;foo=foo

我希望它们看起来像一些“传统”的 URL。

类似:https://whatever.io/crisis-center?id=2&foo=foo

有没有办法更改 Angular2^ 路由器的 URL 方案?如果是这样,有什么建议或例子吗?

【问题讨论】:

    标签: angular url angular-router


    【解决方案1】:

    角度路由时可以使用query parameters

    this.router.navigate(['/crisis-center'], { queryParams: { id: 2, 'foo': 'foo' } });
    

    您的网址将如下所示:

    http://localhost:4200/crisis-center'?id=2&foo=foo
    

    【讨论】:

    • 这正是我一直在寻找的。关于如何navigate 的任何提示?例如:我在name.io/somewhere,我想导航到name.io/somewhere/deeper?id=2&foo=foo。我只能获得 URL 的“根”重定向。非常感谢你! (我会尽快接受答案)
    • 导入ActivatedRouter并在构造函数中创建它的实例,然后在导航时使用它,this.router.navigate(['crisis-center'], { relativeTo: this.activatedRoute, queryParams: { id: 2, 'foo': 'foo' } })
    • 我应该如何获得 this.activatedRoute?我收到一条错误消息,指出我的组件中不存在该属性。
    • import { ActivatedRoute } from '@angular/router'
    • 我忘了把它添加到构造函数中再次谢谢你
    猜你喜欢
    • 1970-01-01
    • 2022-01-18
    • 1970-01-01
    • 2021-09-21
    • 2021-03-26
    • 1970-01-01
    • 2018-02-06
    • 2017-04-23
    • 1970-01-01
    相关资源
    最近更新 更多