Angular Model Driven Forms Cheat Sheet
Angular Model Driven Forms Cheat Sheet
Model-driven forms
In the component:
import
{ControlGroup,
FormBuilder,
Validators}
from
angular2/common;
signupForm: ControlGroup;
constructor(fb:
FormBuilder){
this.signupForm
=
fb.group({
name:
[,
Validators.required],
email:
[],
billing:
fb.group({
cardNumber:
[,
Validators.required],
expiry:
[,
Validators.required]
})
});
}
1
Angular Forms By: Mosh Hamedani
In the template:
<form
[ngFormModel]="signupForm">
<input
ngControl="name">
<input
ngControl="email">
<div
ngControlGroup="billing">
<input
ngControl="cardNumber">
<input
ngControl="expiry">
</div>
</form>
return
null;
}
}
2
Angular Forms By: Mosh Hamedani
name:
[,
Validators.compose([
Validators.required,
UsernameValidators.cannotContainSpace
])]
Async Validator
The same as a custom validator, but we return a Promise.
3
Angular Forms By: Mosh Hamedani
When using more than one custom or async validator, we use the compose or
composeAsync methods:
[
defaultValue,
Validators.compose([v1,
v2]),
Validators.composeAsync([v3,
v4])
];
<input
ngControl="name">
<div
*ngIf="name.control.pending">Checking
for
uniqueness</div>