Skip to main content

FieldConfig

Defined in: core/types/deep-schema.ts:32

Конфигурация поля

Remarks

В схеме createForm({ model, schema }) лист связывают через value: model.$.field: harvest ловит узел по идентичности Signal (node.value instanceof Signal — см. create-form.ts) и нормализует его в valueSignal. Писать valueSignal: в самой схеме createForm нельзя — harvest его не подхватит (проверка идёт по node.value), и component/componentProps этого узла молча отбросятся. value/valueSignal на прямом FieldNode-конфиге — это post-normalization / legacy-слой, а не форма записи в схеме createForm.

Type Parameters

T

T

Properties

asyncValidators?

optional asyncValidators: AsyncValidatorFn<T>[];

Defined in: core/types/deep-schema.ts:52


component?

optional component: ComponentType<any>;

Defined in: core/types/deep-schema.ts:48

UI-компонент поля. Опционален: core-часть можно использовать без ссылки на компонент (значение/валидация работают без UI; компонент нужен только для рендеринга).


componentProps?

optional componentProps: any;

Defined in: core/types/deep-schema.ts:50


debounce?

optional debounce: number;

Defined in: core/types/deep-schema.ts:56

Задержка (в мс) перед запуском асинхронной валидации


disabled?

optional disabled: boolean;

Defined in: core/types/deep-schema.ts:53


updateOn?

optional updateOn: "change" | "blur" | "submit";

Defined in: core/types/deep-schema.ts:54


validators?

optional validators: ValidatorFn<T>[];

Defined in: core/types/deep-schema.ts:51


value?

optional value: T | null;

Defined in: core/types/deep-schema.ts:37

Начальное значение-литерал (legacy-путь). Под архитектурой M1 значение приходит из FieldConfig.valueSignal (сигнал FormModel); тогда value не требуется.


valueSignal?

optional valueSignal: Signal<T>;

Defined in: core/types/deep-schema.ts:42

Сигнал значения из FormModel (M1). Если задан — служит источником истины значения поля (нода не владеет значением, а ссылается на этот сигнал). Имеет приоритет над value.