Как проверить спецификацию c ngModels
в angular
Например: у меня есть таблица, в которой я хотел бы проверить только вторую строку из ngModels
Я могу проверить полную форму (Все ngModels
), используя this.myForm.valid
.
, а также проверить спецификацию c ngModels
Я могу l oop через this.myForm.controls
и проверить спецификацию c one.
Есть ли другой способ проверки вместо циклического перемещения по элементам управления всей формы?
Полный пример ниже
TS
@ViewChild(NgForm, { static: false }) myForm: NgForm;
employeesData = [{id:"1",firstName:"Tom",lastName:"Cruise",photo:"https://pbs.twimg.com/profile_images/735509975649378305/B81JwLT7.jpg"},{id:"2",firstName:"Maria",lastName:null,photo:"https://pbs.twimg.com/profile_images/3424509849/bfa1b9121afc39d1dcdb53cfc423bf12.jpeg"},{id:"3",firstName:"James",lastName:null,photo:"https://pbs.twimg.com/profile_images/664886718559076352/M00cOLrh.jpg"}];
save() {
//This helps to validate all fields
console.log(this.myForm.valid);
//This contains all form keys - so I can loop through each and validate
console.log(this.myForm.controls);
}
}
HTML
<form #myForm="ngForm">
<table>
<tr>
<th>First Name</th>
<th>Last Name</th>
<th>Actions</th>
</tr>
<tr *ngFor="let employee of employeesData; let i=index">
<td>
<input type="text" [(ngModel)]="employee.firstName" [name]="'firstName'+i" required>
</td>
<td>
<input type="text" [(ngModel)]="employee.lastName" [name]="'lastName'+i" required>
</td>
<td>
<button (click)="save()">Save</button>
</td>
</tr>
</table>
</form>
Есть ли лучший способ проверки указанных c ngModels?
Как Могу ли я проверить только одну строку?