关于路由传参与接收参数

路由 跳转传参的方式有很多,下面我总结一下常用的传参方式及其相对应的接收参数方式。

第一,参数是以;分隔

http://localhost:8092/account/manage/issue;id=161123434754052096 

路由跳转方式:

1,routerLink的方式

<a  [routerLink]="['/coupon-manage/issueCoupon',{id:data.id}]"></a>

2.navigate的方式

this.router.navigate([`/coupon-manage/issueCoupon/issued`,{ id: id,name:name }])

对于分号分隔的参数有如下对应的参数接收方式:

 const idList = this.activatedRoute.params['value'];

当然在使用之前要引入路由相关参数:

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

第二,参数是以?分隔

1.routerLink的方式

若是只是传个别的值

<a  [routerLink]="['/coupon-manage/issueCoupon']" [queryParams]="{'custId':list.custId,'userName':list.userName}"></a>

例如在table当中,若是要传整行数据的值(data)

<a  [routerLink]="['/coupon-manage/issueCoupon']" [queryParams]="data"></a>

2.navigate的方式

this.router.navigate([`/coupon-manage/issueCoupon/issued`],{queryParams:{id:custId})

对应的参数接收方式如下:

this.activatedRoute.queryParams.subscribe(param => {console.log(param)})

第三种参数是类似这种的

http://localhost:8094/admin/product/product-manage/package/2019041510213862676

1.routerLink的方式

<a  [routerLink]="['/coupon-manage/issueCoupon',id]" ></a>

当然,在路由中是要有配置的

{

 path:'listDetail/:id',

 component:ListDetailComponent

 }

2.navigate方式

this.router.navigate([`/product-manage/type/${id}`]);

接收参数的方式:

this.activatedRoute.snapshot.params["id"]

以上是总结的路由传参方式及其参数在url中的展现形式。

当然了,如果需要的时候 ,以上传参方式也是可以组合使用的。

示例如下:

jumpToPage(id, type) {

this.router.navigate([`/product-manage/type/${id}`, { type: type,index:2 }]);

}

 

补充内容:

想要路由跳转时浏览器中的url会保持不变,但是传入的参数依然有效,可添加参数skipLocationChange设置为true,具体使用如下:

this.router.navigate(['../strategic/infoManage'],{ skipLocationChange: true,queryParams:{name:cName} });

有不错的链接,大家可以参考下:

https://blog.csdn.net/private_xiaolei/article/details/83042647

 

 

 

 

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值