父级儿童数据分享Angular 2中的最佳方式

时间:2017-01-30 11:25:18

标签: angular angular2-services

在Angular 2中我有一种情况,即一个Component可以拥有许多子组件,并且一次只能使用* ngIf显示一个组件。

<div class="main-content" *ngIf="vdcService.vdRequest.sectionId == 1">
   <a></a>
</div>

<div class="main-content" *ngIf="vdcService.vdRequest.sectionId == 15">
    <b></b>
</div>
<div class="main-content" *ngIf="vdcService.vdRequest.sectionId == 15">
    <c></c>
</div>

以及更多和所有这些组件将在表格和其他元素中显示其特定数据。现在我想从父节点向这些子组件发送数据。如何以最佳方式执行此操作意味着我应该使用 @Input 传递数据,还是应该将数据存储在服务中,子组件直接访问服务中的数据。父组件通过查看要呈现的组件来从休息服务获取数据。我需要一些建议,我应该使用哪个选项或任何其他最佳解决方案?

1 个答案:

答案 0 :(得分:0)

它只是儿童沟通的父母。最简单的方法是在每个子组件上使用@Input。每次从其余服务获取数据时,父组件只需更新与这些输入相关的值。