On this page
FormGroupDirective
directive
Binds an existing FormGroup or FormRecord to a DOM element.
See also
Exported from
Selectors
[formGroup]
Properties
| Property | Description |
|---|---|
submitted: boolean |
Read-Only Reports whether the form submission has been triggered. |
directives: FormControlName[] |
Tracks the list of added |
@Input('formGroup')form: FormGroup |
Tracks the |
@Output()ngSubmit: EventEmitter |
Emits an event when the form submission has been triggered. |
formDirective: Form |
Read-Only Returns this directive's instance. |
control: FormGroup |
Read-Only Returns the |
path: string[] |
Read-Only Returns an array representing the path to this group. Because this directive always lives at the top level of a form, it always an empty array. |
Inherited from ControlContainer
Inherited from AbstractControlDirective
abstract control: AbstractControl | nullvalue: anyvalid: boolean | nullinvalid: boolean | nullpending: boolean | nulldisabled: boolean | nullenabled: boolean | nullerrors: ValidationErrors | nullpristine: boolean | nulldirty: boolean | nulltouched: boolean | nullstatus: string | nulluntouched: boolean | nullstatusChanges: Observable<any> | nullvalueChanges: Observable<any> | nullpath: string[] | nullvalidator: ValidatorFn | nullasyncValidator: AsyncValidatorFn | null
Template variable references
Description
This directive accepts an existing FormGroup instance. It will then use this FormGroup instance to match any child FormControl, FormGroup/FormRecord, and FormArray instances to child FormControlName, FormGroupName, and FormArrayName directives.
Register Form Group
The following example registers a FormGroup with first name and last name controls, and listens for the ngSubmit event when the button is clicked.
import {Component} from '@angular/core';
import {FormControl, FormGroup, Validators} from '@angular/forms';
@Component({
selector: 'example-app',
template: `
<form [formGroup]="form" (ngSubmit)="onSubmit()">
<div *ngIf="first.invalid"> Name is too short. </div>
<input formControlName="first" placeholder="First name">
<input formControlName="last" placeholder="Last name">
<button type="submit">Submit</button>
</form>
<button (click)="setValue()">Set preset value</button>
`,
})
export class SimpleFormGroup {
form = new FormGroup({
first: new FormControl('Nancy', Validators.minLength(2)),
last: new FormControl('Drew'),
});
get first(): any {
return this.form.get('first');
}
onSubmit(): void {
console.log(this.form.value); // {first: 'Nancy', last: 'Drew'}
}
setValue() {
this.form.setValue({first: 'Carson', last: 'Drew'});
}
}
Methods
|
addControl()
|
|||
|---|---|---|---|
Method that sets up the control directive in this group, re-calculates its value and validity, and adds the instance to the internal list of directives. |
|||
|
dir |
FormControlName |
The |
Returns
|
getControl()
|
|||
|---|---|---|---|
Retrieves the |
|||
|
dir |
FormControlName |
The |
Returns
|
removeControl()
|
|||
|---|---|---|---|
Removes the |
|||
|
dir |
FormControlName |
The |
Returns
void
|
addFormGroup()
|
|||
|---|---|---|---|
Adds a new |
|||
|
dir |
FormGroupName |
The |
Returns
void
|
removeFormGroup()
|
|||
|---|---|---|---|
Performs the necessary cleanup when a |
|||
|
dir |
FormGroupName |
The |
Returns
void
|
getFormGroup()
|
|||
|---|---|---|---|
Retrieves the |
|||
|
dir |
FormGroupName |
The |
Returns
|
addFormArray()
|
|||
|---|---|---|---|
Performs the necessary setup when a |
|||
|
dir |
FormArrayName |
The |
Returns
void
|
removeFormArray()
|
|||
|---|---|---|---|
Performs the necessary cleanup when a |
|||
|
dir |
FormArrayName |
The |
Returns
void
|
getFormArray()
|
|||
|---|---|---|---|
Retrieves the |
|||
|
dir |
FormArrayName |
The |
Returns
|
updateModel()
|
||||||
|---|---|---|---|---|---|---|
Sets the new value for the provided |
||||||
|
dir |
FormControlName |
The |
value |
any |
The new value for the directive's control. |
Returns
void
|
onSubmit()
|
|---|
Method called with the "submit" event is triggered on the form. Triggers the |
|
onReset()
|
|---|
Method called when the "reset" event is triggered on the form. |
|
|
resetForm()
|
|||
|---|---|---|---|
Resets the form to an initial value and resets its submitted status. |
|||
|
value |
any |
The new value for the form. Optional. Default is |
Returns
void
Inherited from AbstractControlDirective
© 2010–2023 Google, Inc.
Licensed under the Creative Commons Attribution License 4.0.
https://v14.angular.io/api/forms/FormGroupDirective