- When you apply
ngModel
directive to an input field, angular creates a FormControl
object and associates it with the input field
- Formcontrol represents an input field
- Formgroup represents a group of form controls
- Each form is a form group because it has atleast 1 controls
- Angular by default applies a directive called ngForm to form tag
- When you define components or directives you specify selector. When angular sees a selector that matches element it applies directive or component on that element
- Whenever angular finds a form without the attributes
noForm
or formGroup
, it automatically applies the ngForm
directive on that
- We can create a template variable that reference to the ngForm directive
- Creates a form group object and associates with the form
- ngForm exposes output property
ngSubmit
which is used to handle submit events of form
value
is the json representation of our form and we can send to API on server for persistence
name
attribute that we assigned to the input field determines the name of property in the value object
<form #f="ngForm" (ngSubmit)="onSubmit(f)">
</form>
onSubmit(){
console.log(f.value)
}