如何使用routerlink和id以角度刷新页面

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

我有一个角度应用程序,其中我有一些路由器链接导航

我的要求是,如果用户页面已经使用某个 Id 打开,并且如果满足条件,则必须从具有 ID 的现有用户页面导航到该特定 ID 用户页面。

.component.ts

  if(userID == 0){
             this.router.navigate(['./user/' + userID]);
           }
           else{
            this.router.navigate(['./details']);
            
           }

从上面的代码中,如果我已经在具有 id 的用户页面中,则条件满足 if 条件,那么我们必须导航到具有该 ID 的特定用户页面。

任何人都可以帮助我吗

angular typescript angular-ui-router angular-routerlink navigateurl
1个回答
0
投票

为了刷新当前路线,在路线声明中您必须执行以下操作:

RouterModule.forRoot(appRoutes, {
  // ..
  onSameUrlNavigation: 'reload',
  // ..
})

相反,要使用参数导航到另一条路线,您必须:

1 - 重新定义您的路线

{path: 'user/:userID', component: MyComponent }

2 - 导航至页面

this.router.navigate(["user", userID]);

3 - 从您的页面获取参数

import { ActivatedRoute } from '@angular/router';

private userID: string;

constructor(private readonly activatedRoute: ActivatedRoute) {}

ngOnInit() {
    this.activatedRoute.params.subscribe((params: Params) => this.userID = params['userID']);
}

有关更多信息,请参阅 Angular routerActivatedRoute

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