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.