无法使用angular 2中的导航获取其他组件的数据

时间:2017-07-18 11:08:21

标签: angular

**Current Code:**:
  

目前我正在使用过滤器组件。我有数据,来自   服务,我已成功导航到用户组件。

**My Code is**`getFilterDetails(){
this.userService.getFilterDetailsDetails(this.locations).subscribe(data => {
    this.filterType = data;
  });
this.router.navigate(['user']);
}`
*Problem is i need to pass data to user component and how to get data in user component. Kindly help me to get this done?*

2 个答案:

答案 0 :(得分:1)

您可以将数据传递为:

select
    i.InvoiceHeaderId,
    i.InvoiceLineNo,
    i.ProductCode,
    i.Price,
    [TotDiscount]=isnull(d.TotDiscount)
from
    [InvoiceLine] i
left join
    [Discount] d on i.InvoiceHeaderId=d.InvoiceHeaderId and i.InvoiceLineNo=d.InvoiceLineNo
group by
    i.InvoiceHeaderId,
    i.InvoiceLineNo,
    i.ProductCode,
    i.Price

并检索数据

this.router.navigate(['user'], { data: { yourData : yourData } });

希望这会有所帮助:)

答案 1 :(得分:0)

您可以使用在两个组件中注入的共享服务。

@Injectable()
export class sharedService {
data: any;
}

在您的第一个组件中,执行以下操作:

this.userService.getFilterDetailsDetails(this.locations).subscribe(data => {
    this.filterType = data;
this.sharedService.data = data;
this.router.navigate(['user']);
  });
}

并在另一个组件中注入服务并使用数据。