我是新手,我自己学习角。我对将数据从一个组件传递到另一个组件感到怀疑。
在下面的代码中,我使用click方法传递ID,我有一个示例JSON对象,其中包含对象数组。假设我有3个具有不同ID的对象,并且正在使用*ngFor
循环数据。现在,我使用(click)
方法,如下所示传递我的ID
goToWorkOrderDetails(id): void {
this.router.navigate(['/work-orders/work-order-details', { id }]);
}
在下一页中,我将使用
来检索ID
this.route.params.subscribe((params: Params)=> this.user.id= this.params['id'])
有什么方法可以检索包含该id
的完整异议?
答案 0 :(得分:-1)
您可以使用角度服务。将对象保存在那里,并在新组件上对其进行检索。如果您想通过url发送它们,则可以使用 NavigationExtras 。
家庭组件
import {Router,NavigationExtras} from '@angular/router';
const navigationExtras: NavigationExtras = {
state: {
id:id,
name: name,
....other properties of your object here
}
};
this.router.navigate(['/work-orders/work-order-details'], navigationExtras);
newComponent
constructor(private router: Router) {
const navigation = this.router.getCurrentNavigation();
const state = navigation.extras.state as {
id: string,//or whatever you want
name: string,
};
console.log("id: " + state.id ",name:" + state.name)
}