Bir Angular 2 reaktif formundaki bir kontrolü devre dışı bırakırsam, kontrolün form.value'ya dahil edilmediğini fark ettim. Örneğin formumu aşağıdaki gibi tanımlarsam:
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)
});
ve this.notelinkingForm.value değerini kontrol edin, tüm kontroller etkinleştirilmişse, çıktı şu şekilde olacaktır:
{"Enabled":true, "LinkToPreceeding": true, LinkingTolerance:"100"}
Ancak, bazı kontroller devre dışı bırakıldığında şunlar olur:
{"Enabled":true}
Devre dışı bırakılan kontrollerin nasıl hariç tutulduğuna dikkat edin.
Niyetim, form değiştiğinde form.value'yu içindeki tüm özelliklerle rest API'ime geçirebilmemdir. Devre dışı bırakılan öğeleri içermiyorsa, bu açıkça mümkün olmayacaktır.
Burada bir şey mi özlüyorum yoksa bu beklenen davranış mı? Angular'a, devre dışı bırakılan öğeleri form.value'ya dahil etmesini söylemenin bir yolu var mı?
Düşüncelerinize hoş geldiniz.