gpt4 book ai didi

javascript - Angular 2路由器导航到另一个url时不重置 socket

转载 作者:行者123 更新时间:2023-11-28 05:25:37 25 4
gpt4 key购买 nike

我有另一个名为 compose 的 socket 的路线,例如:

<a [routerLink]="[{outlets: {primary: 'about', compose: 'new-message'}}]">About with compose</a>

当我点击链接时,URL 是:

http://localhost:4200/about(compose:new-message)

那很好,但是当我点击这个时:

<a routerLinkActive="active" [routerLink]="['/home']">Home</a>

URL 仍与 socket :

http://localhost:4200/home(compose:new-message)

我找到的解决方案是像这样重置 socket :

 <a [routerLink]="[{outlets: {primary: 'home', compose: null}}]">Home</a>

但这太冗长和烦人了,因为我需要在每个链接中都这样做,有更好的方法吗?

最佳答案

当您使用 [routerlink] 时,它会根据每次 URL 更改动态生成 href。

您可以按如下方式进行操作:

//url = '/home' in ur case
<a (click)='changeRoute(url)'></a>

在您的组件中添加以下函数。

routChange(url){
this.router.navigateByUrl(url);
}

关于javascript - Angular 2路由器导航到另一个url时不重置 socket ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40201991/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com