Angular中实现路由跳转并通过get方式传递参数

场景

 Angular介绍、安装Angular Cli、创建Angular项目入门教程:

https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/105570017

Angular新建组件以及组件之间的调用:

https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/105694997

通过以上搭建起Angular项目。

Angular中的路由配置、路由重定向、默认选中路由:

https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/106182994

通过上面了解了路由配置后,要实现路由跳转并传值,比如在新闻页面点击某条新闻跳转到新闻详情并将当前新闻的id传递过去。

注:

博客:
https://blog.csdn.net/badao_liumang_qizhi
关注公众号
霸道的程序猿
获取编程相关电子书、教程推送与免费下载。

实现

首先在新闻news组件中声明一个空数组并赋一些值

public list:any[] = [];

在初始化方法中赋值

  ngOnInit(): void {
    for(var i=0;i<10;i++)
    {
      this.list.push("这是第"+i+"条数据");
    }
  }

然后在app.routing.module.ts中引入新闻详情的组件并设置新闻详情的路由

import {NewsdetailComponent} from './components/newsdetail/newsdetail.component';
const routes: Routes = [
  {path:'newsdetail',component:NewsdetailComponent}

];

然后在新闻页面中添加跳转链接

<ul>
    <li *ngFor = "let item of list;let key=index;">
        <a [routerLink]="['/newsdetail']" [queryParams]="{aid:key}">{{key}}--{{item}}</a>
    </li>
</ul>

通过queryParams将当前新闻的索引进行传递参数。

那么怎样在新闻详情页接受这个参数。

首先在新闻详情页引入ActivatedRoute模块

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

然后去声明

constructor(public route:ActivatedRoute) { }

最后获取传递的参数

  ngOnInit(): void {
    this.route.queryParams.subscribe((data)=>{
      console.log(data);
    });
  }

就可以获取到传递的参数

 

这样就能通过get传值的方式获取到传递的参数,可以在url中看到传递的参数

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

霸道流氓气质

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值