我有一条带有两个参数的路由,我正在尝试更新它(只是url,忘记了组件的内容,我也不想刷新页面或其他任何东西,只是更新路由),但是我不能去做。我的路线:
const routes: Routes = [
{ path: "levs", component: MainComponent },
{ path: "levs/:levType", component: LevDetailsComponent },
{ path: "levs/:levType/:levId", component: EntityDetailsComponent }
];
因此,当Im在EntityDetailsComponent
中并且我的网址是:levs/someLev/someLevId
时,我会列出其他实体。单击后,我要更新如下网址:levs/clickedLev/clickedLevId
。我试图通过带有路由器链接的html来做到这一点:
<li [routerLink]="[type.entityType, type.entityName]">lev</li>
或
<li [routerLink]="['/levs', type.entityType, type.entityName]">lev</li>
,但在两种情况下,似乎都将其添加到现有路由中,如下所示:
levs/someLev/someLevId/levs/clickedLev/clickedLevId
我用路由器从EntityDetailsComponent.ts尝试过:
this.router.navigate('/levs',[this.entityType, this.entityIdentifier]);
在参数前也没有levs
,但结果是相同的。
我找到了这个解决方案: Update routeparams in angular 5
但是这些家伙,他们只是在给路线添加数字,我不想增加参数但是要更改它们,他们的方法对我不起作用。 任何帮助将不胜感激!
解决方案 感谢@armandyjoe的帮助。这对我有用,我只需要调整传递的URL并使用true的replaceURL。
this.router.navigate(["/dct/levs/", this.entityType, this.entityIdentifier], {
replaceUrl: true
});
答案 0 :(得分:2)
s = dataframe['title'] + dataframe['description']
df = dataframe[s.str.contains('horse', case=False)].copy()
希望获得帮助!
致谢