我有一个主应用程序和一个辅助应用程序。这两个应用程序都是使用Angular开发的,并且它们的后端是相同的。我想提供一个从主应用程序到辅助应用程序的路由器,并提供一些查询参数。
当前,我的主要应用程序在localhost:4200上运行,辅助应用程序在端口localhost:4300上运行,
我希望每次从主应用程序到辅助应用程序都提供一个默认的网址。
我有使用window.location.href ='url'的想法,但我需要提供额外的查询参数。
我也尝试使用router.navigate([''])和router.navigateByUrl([]),但是没有运气。在寻找好的建议时,有很多问题,但对此问题没有具体答案。
答案 0 :(得分:1)
您可以通过将ActivatedRoute注入到要重定向的组件中来获得路由器参数。 This answer拥有它。然后构造您的网址,类似
const url = `${protocol}//${host}:4300?queryParam=${queryParam1}`;
然后是navigate
location.assign(url);
您不能使用router.navigate,因为每个应用程序都有其自己的路由器实例,该实例可在其应用程序范围内导航。通过location.assing更改网址后,新应用及其路由器开始工作