检测用户的原始位置

问题描述 投票:0回答:1

假设我们有一个应用程序,其路由器配置如下:

export const routes: Routes = [
  { 
    path: 'supply', component: SupplyListComponent
  },
  {  
    path: 'supply/:id', component: SupplyComponent 
  }
];

每个供应商可以在其中包含一个或多个标识符。在Supplycomponent中,我们有一个分页器,它在卡片上逐个显示每个耗材ID,每次用户单击下一个按钮时都会更改URL。示例:

{
  "supply1": [id_1],
  "supply2": [id_2, id_3, id_4]
}

如果按下Supply1,我们将转到'/ supply / id_1'。如果我们按下Supply2,我们将移至'/ supply / id_2',然后可以使用分页器在ID之间进行更改。

我们希望通过两种方式访问​​此SupplyComponent:从位置'/ supply'和另一个应用程序访问。

有什么问题?如果要从另一个应用程序转到'/ supply / id_3',则需要使用ActivatedRoute,获取该ID并从API检索信息。但是,我们仅显示id_3信息,而不显示Supply2的所有信息。

如果用户来自'/ supply'或其他应用程序,有什么方法可以“检测”?我一直在寻找类似的问题,但都不满足我的需求。

提前感谢

angular router angular-activatedroute
1个回答
0
投票

您应该检查Location服务getState(),可以在其中检索history.state对象,该对象包含先前的URL。

© www.soinside.com 2019 - 2024. All rights reserved.