parent 和多个 children 之间的同步变量 angular2

Syncing variable between parent and multiple children angular2

我有一个名为 "builder" 的 parent 组件,还有一个可变数量的 children 名为 "option-1"、"option-2"、...、"option-n".

生成器的 HTML 如下所示:

<b>Total: {{sharedVar}}</b>
<ng-container *ngFor="let option of color?.options">
   <button type="button" (click)="changeVar(sharedVar)"></button>
</ng-container>

<ng-container *ngFor="let option of options">
  <app-options [options]='option'  [(sharedVar)]="sharedVar"></app-options>
</ng-container>

<app-options></app-options> 中它们具有相同的功能 changeVar,它在 child 组件中更改 sharedVar

如何在 parent + 所有 children 中将此 change/update 注册到 sharedVar

'banana-in-a-box' 语法 ([()]) 只能在 Angular 和 [(NgModel)] 中使用。

通常将值绑定到组件 ([sharedVar]) 会将其赋予子组件,并且 Angular 默认情况下会通过更改检测更新子组件中的该值。

您只想确保 <app-options>@Input() 属性 设置为 sharedVar