angular - 将路由器参数传递给组件
问题描述
在我的角度网站的 mainComponent 中,我以这种方式读取了 url 参数:
constructor(private activatedRoute: ActivatedRoute) {}
ngOnInit(){
this.activatedRoute.params.subscribe(params => {
const id = params['id'];
console.log(id);
});
}
这是我设置路由的方式:
const routes: Routes = [
{ path: 'contatti', component: ContattiComponent },
{ path: 'main/:id', component: MainComponent }
];
如何将“id”传递给contactComponent?
解决方案
如果我理解正确,可以像这样从您的路由中读取路由器参数:
constructor( private router: Router){
}
someId: any;
ngOnInit(){
this.route.params
.subscribe( (data: any) => this.someId = data.id //<-- here is your id);
}
更新
关于您的组件结构的信息很少。因此,让我们假设您的主要组件包含其他组件的模板
然后通过您的模板,您可以将 id 传递给其他组件:
<contatti-component
[myId]="someId">
</contatti-component>
推荐阅读
- c++ - 尝试使用 winbgi 显示文本时出现编译器错误
- python - 将字典内容插入字符串以提取查询计划
- php - 如何使用 html select 方法和 php 在 psql 数据库上添加全名?
- python - 如何按说话者姓名汇总时间戳列表 v.2
- python - TypeError:列表索引必须是整数或切片,而不是 NoneType
- python - 嵌套循环中的 Tkinter 画布文本更新
- laravel - Laravel Nova:启用/禁用操作日志视图?
- c++ - 由于未声明的标识符,朋友功能将无法工作
- mongodb - 查询更新显示 0 条记录已更新 mongo
- php - Magento 2:按顺序显示子类别标题和产品?