@angular/forms
Implements a set of directives and providers to communicate with native DOM elements when building forms to capture user input.
Use this API to register directives, build form and data models, and provide validation to your forms. Validators can be synchronous or asynchronous depending on your use case. You can also extend the built-in functionality provided by forms in Angular by using the interfaces and tokens to create custom validators and input elements.
Angular forms allow you to:
- Capture the current value and validation status of a form.
- Track and listen for changes to the form's data model.
- Validate the correctness of user input.
- Create custom validators and input elements.
You can build forms in one of two ways:
- Reactive forms use existing instances of a
FormControl
orFormGroup
to build a form model. This form model is synced with form input elements through directives to track and communicate changes back to the form model. Changes to the value and status of the controls are provided as observables. - Template-driven forms rely on directives such as
NgModel
andNgModelGroup
create the form model for you, so any changes to the form are communicated through the template.
参见
Find out more in the Forms Overview.
入口点
Entry points
主要
Primary
@angular/forms | Implements a set of directives and providers to communicate with native DOM elements when building forms to capture user input. |
主要入口点的导出
Primary entry point exports
NgModules
FormsModule | 导出模板驱动表单所需的提供者和指令,使其可用于导入了该模块的 NgModule 中。 Exports the required providers and directives for template-driven forms, making them available for import by NgModules that import this module. |
ReactiveFormsModule | 导出响应式表单所需的基础设施和指令,使其能用于任何导入了本模块的 NgModule 中。 Exports the required infrastructure and directives for reactive forms, making them available for import by NgModules that import this module. |
类
Classes
AbstractControl | 这是 This is the base class for |
AbstractControlDirective | 控件指令的基类。 Base class for control directives. |
ControlContainer | 包含多个已注册 A base class for directives that contain multiple registered instances of |
FormArray | 跟踪一个控件数组的值和有效性状态,控件可以是 Tracks the value and validity state of an array of |
FormBuilder | 使用用户指定的配置创建 Creates an |
FormControl | 跟踪独立表单控件的值和验证状态。 Tracks the value and validation status of an individual form control. |
FormGroup | 跟踪一组 Tracks the value and validity state of a group of |
NgControl |
A base class that all |
Validators | 提供一组内置验证器,可用于各种表单控件。 Provides a set of built-in validators that can be used by form controls. |
结构
Structures
AbstractControlOptions | 提供给 Interface for options provided to an |
AsyncValidator | 由执行异步验证的类实现的接口。 An interface implemented by classes that perform asynchronous validation. |
AsyncValidatorFn | 本函数接收控件并返回 Promise 或 Observable,如果存在,则该函数会发出验证错误,否则为 null。 A function that receives a control and returns a Promise or observable that emits validation errors if present, otherwise null. |
ControlValueAccessor | 定义一个接口,该接口充当 Angular 表单 API 和 DOM 中的原生元素之间的桥梁。 Defines an interface that acts as a bridge between the Angular forms API and a native element in the DOM. |
Form | 由 An interface implemented by |
Validator | 一个接口,实现了它的类可以扮演验证器的角色。 An interface implemented by classes that perform synchronous validation. |
ValidatorFn | 本函数接收控件并同步返回验证错误的映射表(如果存在),否则返回 null。 A function that receives a control and synchronously returns a map of validation errors if present, otherwise null. |
指令
Directives
AbstractFormGroupDirective |
A base class for code shared between the |
CheckboxControlValueAccessor | 一个 A |
CheckboxRequiredValidator | 该指令会借助 A Directive that adds the |
DefaultValueAccessor | The default |
EmailValidator | 该指令会借助 A directive that adds the |
FormArrayName | 将嵌套的 Syncs a nested |
FormControlDirective | 将独立的 Synchronizes a standalone |
FormControlName | 根据名字将现有 Syncs a |
FormGroupDirective | 将现有的 Binds an existing |
FormGroupName | 将嵌套的 Syncs a nested |
MaxLengthValidator | 该指令用于为带有 A directive that adds max length validation to controls marked with the |
MaxValidator | A directive which installs the |
MinLengthValidator | 该指令用于为带有 A directive that adds minimum length validation to controls marked with the |
MinValidator | A directive which installs the |
NgControlStatus | 指令自动应用于 Angular 表单控件,该控件会根据控件状态设置 CSS 类。 Directive automatically applied to Angular form controls that sets CSS classes based on control status. |
NgControlStatusGroup | 该指令自动应用于 Angular 表单组,基于控件的状态(有效、无效、脏等)设置 CSS 类。 Directive automatically applied to Angular form groups that sets CSS classes based on control status (valid/invalid/dirty/etc). |
NgForm | 创建一个顶级的 Creates a top-level |
NgModel | 根据领域对象创建一个 Creates a |
NgModelGroup | 创建 Creates and binds a |
NgSelectOption | 把选项 Marks |
NumberValueAccessor | 用于写入数字值和监听数字输入框更改的 The |
PatternValidator | 该指令会借助 A directive that adds regex pattern validation to controls marked with the |
RadioControlValueAccessor |
The |
RangeValueAccessor | 此 The |
RequiredValidator | 该指令会借助 A directive that adds the |
SelectControlValueAccessor | 该 The |
SelectMultipleControlValueAccessor | 本 The |
类型
Types
COMPOSITION_BUFFER_MODE | 提供此令牌来控制表单指令是否要缓冲 IME 输入,直到发生“ compositionend” 事件为止。 Provide this token to control if form directives buffer IME input until the "compositionend" event occurs. |
NG_ASYNC_VALIDATORS | 一个 An |
NG_VALIDATORS | 一个 An |
NG_VALUE_ACCESSOR | 用于为表单控件提供 Used to provide a |
ValidationErrors | 定义从失败的验证检查返回的错误映射表。 Defines the map of errors returned from failed validation checks. |