From b0dc2fbfcb909c558c7dcff89c2fe47c89878991 Mon Sep 17 00:00:00 2001 From: Harmeet Singh Date: Thu, 19 Mar 2026 18:42:11 -0500 Subject: [PATCH] docs(forms): clarify disabled FormArray value behavior Document that FormArray.value includes only enabled child controls when the array is enabled, but includes all child values when the FormArray itself is disabled. Fixes #67759 (cherry picked from commit 789c2cd9fbea73f6ec550b4e207d1e3fae47ea49) --- packages/forms/src/model/abstract_model.ts | 3 ++- packages/forms/src/model/form_array.ts | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/packages/forms/src/model/abstract_model.ts b/packages/forms/src/model/abstract_model.ts index ec473af5353..0e19375a484 100644 --- a/packages/forms/src/model/abstract_model.ts +++ b/packages/forms/src/model/abstract_model.ts @@ -550,7 +550,8 @@ export abstract class AbstractControl< * with a key-value pair for each member of the group. * * For a disabled `FormGroup`, the values of all controls as an object * with a key-value pair for each member of the group. - * * For a `FormArray`, the values of enabled controls as an array. + * * For an enabled `FormArray`, the values of enabled controls as an array. + * * For a disabled `FormArray`, the values of all controls as an array. * */ public readonly value!: TValue; diff --git a/packages/forms/src/model/form_array.ts b/packages/forms/src/model/form_array.ts index 1b3a6e3523a..2a3d93c80c2 100644 --- a/packages/forms/src/model/form_array.ts +++ b/packages/forms/src/model/form_array.ts @@ -54,7 +54,8 @@ export type ɵFormArrayRawValue> = ɵTypedOrUntyp * * A `FormArray` aggregates the values of each child `FormControl` into an array. * It calculates its status by reducing the status values of its children. For example, if one of - * the controls in a `FormArray` is invalid, the entire array becomes invalid. + * the controls in a `FormArray` is invalid, the entire array becomes invalid. Similarly, if all + * controls in a `FormArray` are disabled, the entire array becomes disabled. * * `FormArray` accepts one generic argument, which is the type of the controls inside. * If you need a heterogenous array, use {@link UntypedFormArray}.