web-dev-qa-db-ja.com

フォームグループの無効なフォームコントロールから値を取得する方法は?

フォーム状態オブジェクトを使用して新しいFormControlを初期化しようとしましたが、このコントロールはフォーム検証に影響せず、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),
 })

今私がしようとすると:

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

誰かがこの問題に遭遇しましたか?解決策はありますか? Angularバージョン:5.2.6

14

これは問題ではなく、予想される動作です。無効ステータスに関係なくすべての値を含める場合は、次を使用します。

this.userForm.getRawValue()
39
Jota.Toledo

@ jota-toledo 必要なものを80%入手してくれてありがとう。

同じ問題の解決策を探しているがネストされたフォームを探している人のために、私はいつもの

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

this.userForm.getRawValue().nestedForm
2
eper