Ich habe eine Angular 2-Anwendung, die das ReactiveForms
-Modul verwendet, um ein Formular zu verwalten, das einen benutzerdefinierten Validator verwendet. Der Prüfer erhält ein FormControl
-Objekt. Ich habe ein paar Eingabefelder, die denselben benutzerdefinierten Validator verwenden könnten, wenn ich nur den Namen des Feldes wüsste, wenn% code_% an den Validator übergeben wurde.
Ich kann keine Methode oder öffentliche Eigenschaft in FormControl
finden, die den Namen des Eingabefeldes freilegt. Es ist einfach genug, um seinen Wert natürlich zu sehen. Das Folgende zeigt, wie ich es benutzen möchte:
Wir können .parent
Eigenschaft verwenden, und zwar heute ["_parent"]
(siehe unten) :
und jetzt können wir unsere Validator Definition anpassen
%Vor%.parent
später, ["_parent"]
now Im Moment (heute, jetzt) ist die aktuelle Version:
Aber nach dieser Ausgabe: feat (forms): mache 'eltern' zu einer öffentlichen Eigenschaft von 'AbstractControl'
Und wie schon gesagt
Funktionen
- Formen: Machen Sie 'Eltern' zu einer öffentlichen Eigenschaft von 'AbstractControl' (# 11855) (445e592)
- ...
wir könnten später ["_parent"]
in .parent
Ab Angular 4.2.x können Sie mit der öffentlichen parent -Eigenschaft auf ein übergeordnetes Element FormControl
(und seine Steuerelemente) von FormGroup
zugreifen:
Tags und Links angular typescript angular2-forms