Os controles desativados do Angular 2 não são incluídos no formulário.valor
Percebi que, se desabilitar um controle em um formulário reativo Angular 2, o controle não será incluído no formulário.valor. Por exemplo, se eu definir meu formulário como abaixo:
this.notelinkingForm = new FormGroup({
Enabled: new FormControl(settings.Enabled, Validators.required),
LinkToPreceeding: new FormControl({value: settings.LinkToPreceeding, disabled: !settings.Enabled}, Validators.required),
LinkingTolerance: new FormControl({value: settings.LinkingTolerance, disabled: !settings.Enabled}, Validators.required)
});
e verifique this.notelinkingForm.value, se todos os controles estiverem ativados, a saída seria:
{"Enabled":true, "LinkToPreceeding": true, LinkingTolerance:"100"}
No entanto, quando alguns dos controles estão desativados, seria:
{"Enabled":true}
Observe como os controles desabilitados são excluídos.
Minha intenção é que, quando o formulário for alterado, eu quero poder passar o form.value com todas as propriedades nele para minha API restante. Obviamente, isso não será possível se não contiver os itens desabilitados.
Estou faltando alguma coisa aqui ou esse é o comportamento esperado? Existe uma maneira de dizer ao Angular para incluir os itens desabilitados no form.value?
Bem-vindo, seus pensamentos.