Angular中实现动态路由跳转并传递参数
場(chǎng)景
Angular介紹、安裝Angular Cli、創(chuàng)建Angular項(xiàng)目入門教程:
https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/105570017
Angular新建組件以及組件之間的調(diào)用:
https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/105694997
通過(guò)以上搭建起Angular項(xiàng)目。
Angular中的路由配置、路由重定向、默認(rèn)選中路由:
https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/106182994
通過(guò)上面了解了路由配置后,要實(shí)現(xiàn)路由跳轉(zhuǎn)并傳值,比如在新聞頁(yè)面點(diǎn)擊某條新聞跳轉(zhuǎn)到新聞詳情并將當(dāng)前新聞的id傳遞過(guò)去。
如果想通過(guò)get傳值的方式實(shí)現(xiàn)可以參考下面:
https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/106203220
注:
博客:
https://blog.csdn.net/badao_liumang_qizhi
關(guān)注公眾號(hào)
霸道的程序猿
獲取編程相關(guān)電子書、教程推送與免費(fèi)下載。
實(shí)現(xiàn)
首先在新聞news組件中聲明一個(gè)空數(shù)組并賦一些值
public list:any[] = [];在初始化方法中賦值
? ngOnInit(): void {for(var i=0;i<10;i++){this.list.push("這是第"+i+"條數(shù)據(jù)");}}然后在app.routing.module.ts中引入新聞詳情的組件
import {NewsdetailComponent} from './components/newsdetail/newsdetail.component';并設(shè)置新聞詳情的動(dòng)態(tài)路由
const routes: Routes = [{path:'newsdetail/:id',component:NewsdetailComponent} ];然后在新聞頁(yè)面中添加跳轉(zhuǎn)鏈接
<ul><li *ngFor = "let item of list;let key=index;"><a [routerLink]="['/newsdetail/',key]" >{{key}}--{{item}}</a></li> </ul>通過(guò)第二個(gè)參數(shù)將當(dāng)前新聞的索引進(jìn)行傳遞參數(shù)。
那么怎樣在新聞詳情頁(yè)接收這個(gè)參數(shù)。
首先在新聞詳情頁(yè)引入ActivatedRoute模塊
import {ActivatedRoute} from '@angular/router';然后去聲明
constructor(public route:ActivatedRoute) { }最后獲取傳遞的參數(shù)
? ngOnInit(): void {this.route.params.subscribe((data)=>{console.log(data);});}就可以獲取到傳遞的參數(shù)
?
這樣就能通過(guò)動(dòng)態(tài)路由的方式獲取到傳遞的參數(shù),可以在url中看到傳遞的參數(shù)
?
總結(jié)
以上是生活随笔為你收集整理的Angular中实现动态路由跳转并传递参数的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: Angular中实现路由跳转并通过get
- 下一篇: Angular中使用JS实现路由跳转、动