Q1. Czy to możliwe, aby jedna kontrolka tj:ngControl z ngFor w Angular2
ValidNumber = new Control('', CustomValidators.number({min:1, max:10}))
aby potwierdzić wszystkie podobny typ input
pól w szablonie?
Q2. Czy te pola mogą być generowane przez ngFor
?
FailedMethod 1: działa Validation ale wartości są połączone.
<input [ngFormControl]="ValidNumber" name="num1" type="number"/>
<input [ngFormControl]="ValidNumber" name="num2" type="number"/>
FailedMethod 2: Z FormBuilder to samo co wyżej.
<form [ngFormModel]="formBuiltWithFormBuilder">
<input ngControl="ValidNumber" name="num1" type="number"/>
<input ngControl="ValidNumber" name="num2" type="number"/>
</from>
Cel Wyjaśnienie:
Próbuję walidacji pól formularza, które mogą być generowane z ngFor i wymagają podobnych walidacji.
Bez definiowania podobnych elementów sterujących wielokrotnie w innym miejscu.
Wartości, które mogę wyodrębnić dowolną inną metodą, taką jak
#form="ngForm"
lubngModel
, wszystko czego chcę odngControl
jest sprawdzanie poprawności.
To jest miłe dla oka, zakodowałem coś podobnego "mentalnie", ale staram się również nie zapętlać gdzie indziej niż szablon ngFor, to jest miejsce, w którym stoi prawdziwe wyzwanie. –
Możesz przenieść kod 'ValidNumber = new Control ('', CustomValidators.number ({min: 1, max: 10}))) do dyrektywy, następnie możesz użyć iteracji' 'ngFor' i nie potrzebujesz kolejny w twoim kodzie. –
Dla aktualnej wersji Angular2 (2.2.x), kontrola powinna być FormControl, a [ngFormControl] powinna być [formControl] – isevcik