加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

Angular 2 – 将参数传递给Route

发布时间:2020-12-17 07:53:55 所属栏目:安全 来源:网络整理
导读:我有一个 a标签如下, a [routerLink]="[/Person']"Person/a 所以我想把person.id传递给这个/ Person路由器.我怎样才能通过它在@RouteConfig上处理它,就像Angular 1中的params一样 传递给路由器链接: a [routerLink]="['/Person',person.id]"Person/a 处理组
我有一个< a>标签如下,
<a [routerLink]="[/Person']">Person</a>

所以我想把person.id传递给这个/ Person路由器.我怎样才能通过它&在@RouteConfig上处理它,就像Angular 1中的params一样

传递给路由器链接:
<a [routerLink]="['/Person',person.id]">Person</a>

处理组件:

this.route.params.subscribe(
   (params : Params) => {
      this.id = params["id"]; 
   }
);

第二种方式:

this.route.params.forEach(
   (params : Params) => {
       this.id = params["id"];
   }
);

在此示例中,您必须像这样注入ActivatedRoute(例如路由属性):

constructor(private route : ActivatedRoute) {}

如果您订阅 – 取消订阅Observable以防止内存泄漏非常重要.

完整示例:

export class SimpleComponent implements OnInit,OnDestroy {
    private id : number;
    private route$: Subscription;
    constructor(private route : ActivatedRoute) {}

    ngOnInit() {
        this.route$= this.route.params.subscribe(
            (params : Params) => {
                this.id = +params["id"]; // cast to number
            }
        );
    }
    ngOnDestroy() {
        if(this.route$) this.route$.unsubscribe();
    }
}

配置:

export const routes = [
    ...
    { path : 'Person/:id',component : ...},...
];

此外,@ RouteConfig已弃用.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读