web-dev-qa-db-fra.com

Comment obtenir des valeurs de contrôles de formulaire désactivés dans un groupe de formulaires?

J'ai essayé d'initialiser mon nouveau FormControl à l'aide d'un objet d'état de formulaire et j'ai remarqué que ce contrôle n'influence pas ma validation de formulaire et qu'il disparaît également des valeurs de FormGroup.

this.userForm = new FormGroup({
  email: new FormControl('', Validators.required),
  firstName: new FormControl('',Validators.required),
  lastName: new FormControl('',Validators.required),
  role: new FormControl({value: 'MyValues', disabled: true},Validators.required),
 })

Maintenant si j'essaye de faire:

this.userForm.value //email, firstName, lastName

Quelqu'un at-il rencontré ce problème? Toute solution? Version angulaire: 5.2.6

10

Ce n'est pas un problème, est le comportement attendu. Si vous souhaitez inclure toutes les valeurs indépendamment de l'état désactivé, utilisez les éléments suivants:

this.userForm.getRawValue()
14
Jota.Toledo

Merci @ jota-toledo de m'avoir obtenu 80% de ce dont j'avais besoin. 

Pour ceux qui recherchent une solution au même problème mais pour les formulaires imbriqués, j'ai pu résoudre le problème en changeant mon 

this.userForm.get('nestedForm').value

à 

this.userForm.getRawValue().nestedForm
0
eper