FormField
Связывает поле формы FieldTree с элементом управления пользовательского интерфейса, который его редактирует. Элемент управления пользовательского интерфейса может быть одним из следующих:
- Нативный элемент HTML input или textarea
- Пользовательский элемент управления signal forms, реализующий
FormValueControlилиFormCheckboxControl - Компонент, предоставляющий
ControlValueAccessor. Его следует использовать только для обратной совместимости с реактивными формами. Предпочтительны варианты (1) и (2).
API
class FormField<T> {
readonly @Input('formField') field: InputSignal<Field<T>>;
readonly state: Signal<FieldState<T, string | number>>;
readonly injector: Injector;
readonly element: HTMLElement;
readonly errors: Signal<WithFieldTree[]>;
focus(options?: FocusOptions | undefined): void;
reset(): void;
registerAsBinding(bindingOptions?: FormFieldBindingOptions | undefined): void;
}
field
InputSignal<Field<T>>Поле, связываемое с базовым элементом управления формы.
state
Signal<FieldState<T, string | number>>FieldState для текущего связанного поля.
injector
InjectorИнъектор узла для DOM-элемента, содержащего эту привязку поля.
element
HTMLElementDOM-элемент, содержащий эту привязку поля.
errors
Signal<WithFieldTree[]>Ошибки, связанные с этим полем формы.
focus
voidУстанавливает фокус на эту привязку поля.
По умолчанию фокус устанавливается на содержащий её DOM-элемент. Однако пользовательские элементы управления FormUiControl могут реализовать собственное поведение при установке фокуса.
FocusOptions | undefined
void
reset
voidСбрасывает связанный элемент управления.
void
registerAsBinding
voidРегистрирует этот FormField как привязку к связанному с ним FieldState.
Этот метод следует вызывать не более одного раза для каждого FormField. FormField, размещённый на пользовательском элементе управления (FormUiControl), автоматически регистрирует этот элемент управления как привязку.
void
Описание
Связывает поле формы FieldTree с элементом управления пользовательского интерфейса, который его редактирует. Элемент управления пользовательского интерфейса может быть одним из следующих:
- Нативный элемент HTML input или textarea
- Пользовательский элемент управления signal forms, реализующий
FormValueControlилиFormCheckboxControl - Компонент, предоставляющий
ControlValueAccessor. Его следует использовать только для обратной совместимости с реактивными формами. Предпочтительны варианты (1) и (2).
Эта директива выполняет несколько задач:
- Обеспечивает двустороннюю привязку значения состояния поля к значению элемента управления пользовательского интерфейса
- Привязывает к элементу управления дополнительные связанные с формами состояния поля (disabled, required и т. д.)
- Передаёт соответствующие события элемента управления в состояние поля (например, помечает поле как затронутое при потере фокуса)
- Предоставляет фиктивный
NgControl, реализующий часть функций, доступных вNgControlреактивных форм. Это сделано для повышения совместимости с элементами управления, разработанными для работы с реактивными формами. Не следует использовать его для элементов управления, написанных для signal forms.
Super-powered by Google ©2010–2025.
Code licensed under an MIT-style License. Documentation licensed under CC BY 4.0.
https://angular.dev/api/forms/signals/FormField