使用Angular的路由功能可以将多个页面或者组件关联在一起。而动态路由则是在路由路径中包含由用户生成的数据,这些数据在路由的生命周期内可以被动态地修改。下面将介绍如何在Angular中设置动态路由。
const routes: Routes = [ { path: 'product/:id', component: ProductDetailComponent }, ];
路由路径中的“:id”就是动态参数,它表示该路径下的id值会被动态地确定。 2. 在组件中引入“ActivatedRoute”模块。这个模块可以用来获取路由参数。例如:
import { Component, OnInit } from '@angular/core'; import { ActivatedRoute } from '@angular/router'; @Component({ selector: 'app-product-detail', templateUrl: './product-detail.component.html', styleUrls: ['./product-detail.component.css'] }) export class ProductDetailComponent implements OnInit { productId: number; constructor(private routeInfo: ActivatedRoute) { } ngOnInit() { this.productId = this.routeInfo.snapshot.params['id']; } }
在上面的代码片段中,组件先从路由信息中获得“ActivatedRoute”模块,然后使用它的“snapshot.params”方法得到与路由参数对应的值。
通过以上两步,我们就可以在Angular中设置动态路由了。在路由路径中添加动态部分后,在组件中使用“ActivatedRoute”模块获取动态参数值即可。