2017-08-31 1 views
0

Comment pouvons-nous accéder à l'ensemble du formulaire à l'intérieur d'une fonction de validation?Comment accéder à formControll le plus haut dans une fonction de validation d'un groupe de formulaires imbriqué?

J'ai essayé de donner control.parent.parent, mais en lançant une erreur.

private unitNumberValidator(hasMdu){ 
    return (control: AbstractControl)=>{ 
    let returnVal = null; 
//here i want to access entire form 
    console.log(control.parent.parent); 

return returnVal; 
} 
} 

Comment pouvons-nous y parvenir? Merci

+0

Cela a fonctionné. Merci beaucoup @yurzui, j'ai été bloqué sur ce pendant 3 heures, –

Répondre

1

Juste utiliser root getter comme:

<FormGroup>control.root 

https://angular.io/api/forms/AbstractControl#root

+0

laissez p = control.root; console.log (p.get ("radioSelection"). Value, "ddd"); Je reçois une erreur lorsque j'accède à la valeur; formGroup attend une instance FormGroup. Veuillez en passer un. –

+0

Pouvez-vous créer un plunker pour le reproduire? – yurzui

+0

control.root.get ("radioSelection") fonctionne correctement. l'erreur arrive seulement quand j'essaie d'accéder à la valeur, je vais essayer de mettre en place un plunker bientôt –