2017-08-04 35 views
0

我传递数据这样角通数据

console.log(this.regForm.value); //there is data 
    this._router.navigate(["/tsafety/checklist-checks"], this.regForm.value); 

在组件与路由checklist-checks我想只要我试图访问this.truckdetails它使用

constructor(private route:ActivatedRoute) 
{ 
    this.route 
    .params 
    .subscribe(params => { 
     this.truckdetails = params; //this is never set 
     console.log(params);// this is empty 
    }); 
} 

检索数据总是空的。

我还需要添加什么来获取传递的数据?

回答

1

你应该尝试使用this.route.snapshot.data['yourdata']

1

导航是不正确访问数据。可选参数(如传递的表单数据)应驻留在方括号内。 navigate()函数的第二个参数需要关于导航的额外信息。请参阅:https://angular.io/api/router/Router#navigate

你的代码应该是

this._router.navigate(["/tsafety/checklist-checks", this.regForm.value]); 
0

我用switchMap在我的项目。

this.route.params 
    .switchMap((params: Params) => { 
    console.log(params); 
});