DetailsFields
Input
car
和
carIndex
import { Component, OnInit, Input } from '@angular/core';
import { FormGroup } from '@angular/forms';
@Component({
selector: 'app-child',
templateUrl: './details-fields.component.html',
styleUrls: ['./details-fields.component.css']
})
export class DetailsFields implements OnInit {
@Input() form: FormGroup;
@Input() car: any;
@Input() carIndex: number;
ngOnInit() { }
}
详细信息-fields.component.html
[formGroup]="form"
div
这是真正的钥匙。这就是告诉子模板要使用的表单组的内容。在这之后,您将在代码中从父级传递此消息。
<div [formGroup]="form">
<div class="car-wrap" formArrayName="cars">
<div [ngClass]="car.make + '-car'" [formGroupName]="carIndex">
<p class="title">This car is a {{car.make}}</p>
<div formGroupName="details">
<input type="text" formControlName="make">
<input type="text" *ngIf="car.make != 'ford'" formControlName="model">
<input type="number" formControlName="year">
</div>
<div formGroupName="appearance">
<input type="text" formControlName="color">
</div>
</div>
</div>
</div>
carsForm
以及
<div id="cars" [formGroup]="carsForm">
<div *ngFor="let car of cars; let i = index;">
<app-child [form]="carsForm" [car]="car" [carIndex]="i"></app-child>
</div>
</div>