Spec-Zone.ru › Angular

UntypedFormBuilder

UntypedFormBuilder — это то же самое, что и FormBuilder, но он предоставляет элементы управления без типизации.

API

class UntypedFormBuilder extends FormBuilder {
  group(controlsConfig: { [key: string]: any; }, options?: AbstractControlOptions | null | undefined): UntypedFormGroup;
  group(controlsConfig: { [key: string]: any; }, options: { [key: string]: any; }): UntypedFormGroup;
  control(formState: any, validatorOrOpts?: ValidatorFn | FormControlOptions | ValidatorFn[] | null | undefined, asyncValidator?: AsyncValidatorFn | AsyncValidatorFn[] | null | undefined): UntypedFormControl;
  array(controlsConfig: any[], validatorOrOpts?: ValidatorFn | AbstractControlOptions | ValidatorFn[] | null | undefined, asyncValidator?: AsyncValidatorFn | AsyncValidatorFn[] | null | undefined): UntypedFormArray;
  override readonly nonNullable: NonNullableFormBuilder;
  override record<T>(controls: { [key: string]: T; }, options?: AbstractControlOptions | null): FormRecord<ɵElement<T, null>>;
}

group

2 перегрузки

Как и FormBuilder#group, но результирующая группа не типизирована.

@paramcontrolsConfig{ [key: string]: any; }
@paramoptionsAbstractControlOptions | null | undefined
@returnsUntypedFormGroup
@deprecated

Этот API не является типобезопасным и может привести к проблемам при переименовании с помощью Closure Compiler. Вместо этого используйте перегрузку FormBuilder#group с AbstractControlOptions.

@paramcontrolsConfig{ [key: string]: any; }
@paramoptions{ [key: string]: any; }
@returnsUntypedFormGroup

control

UntypedFormControl

Как и FormBuilder#control, но результирующий элемент управления не типизирован.

@paramformStateany
@paramvalidatorOrOptsValidatorFn | FormControlOptions | ValidatorFn[] | null | undefined
@paramasyncValidatorAsyncValidatorFn | AsyncValidatorFn[] | null | undefined
@returnsUntypedFormControl

array

UntypedFormArray

Как и FormBuilder#array, но результирующий массив не типизирован.

@paramcontrolsConfigany[]
@paramvalidatorOrOptsValidatorFn | AbstractControlOptions | ValidatorFn[] | null | undefined
@paramasyncValidatorAsyncValidatorFn | AsyncValidatorFn[] | null | undefined
@returnsUntypedFormArray

nonNullable

NonNullableFormBuilder

Возвращает FormBuilder, в котором автоматически создаваемые элементы FormControl имеют {nonNullable: true} и не допускают значения null.

Создание элементов управления, не допускающих значения null

Создаваемый элемент управления не будет допускать значение null и при сбросе будет возвращаться к исходному значению.

let nnfb = new FormBuilder().nonNullable;
let name = nnfb.control('Alex'); // FormControl<string>
name.reset();
console.log(name); // 'Alex'

Создание групп или массивов, не допускающих значения null

При создании группы или массива все автоматически созданные внутренние элементы управления не будут допускать значение null и при сбросе будут возвращаться к исходным значениям.

let nnfb = new FormBuilder().nonNullable;
let name = nnfb.group({who: 'Alex'}); // FormGroup<{who: FormControl<string>}>
name.reset();
console.log(name); // {who: 'Alex'}

Создание полей, допускающих значение null, в группах или массивах

При этом поле по-прежнему может допускать значение null. В частности, уже созданный FormControl не изменяется. Например:

let nnfb = new FormBuilder().nonNullable;
// FormGroup<{who: FormControl<string|null>}>
let name = nnfb.group({who: new FormControl('Alex')});
name.reset(); console.log(name); // {who: null}

Поскольку внутренний элемент управления явно создаётся вызывающим кодом, конструктор не может контролировать его создание и не может исключить null.

record

FormRecord<ɵElement<T, null>>

Создаёт новый экземпляр FormRecord. Принимает один универсальный аргумент — объект, содержащий все ключи и соответствующие типы внутренних элементов управления.

@paramcontrols{ [key: string]: T; }

Коллекция дочерних элементов управления. Ключ каждого дочернего элемента — это имя, под которым он зарегистрирован.

@paramoptionsAbstractControlOptions | null

Объект параметров конфигурации для FormRecord. Объект должен иметь тип AbstractControlOptions и может содержать следующие поля:

  • validators: функция синхронного валидатора или массив функций-валидаторов.
  • asyncValidators: один асинхронный валидатор или массив функций асинхронных валидаторов.
  • updateOn: событие, при котором следует обновить элемент управления (варианты: 'change' | 'blur' | submit').
@returnsFormRecord<ɵElement<T, null>>

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/UntypedFormBuilder

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API