Angular NgModel Example | NgModel Directive In Angular

By Hardik Savani October 20, 2023 Category : Angular

Hi All,

In this example, i will show you angular ngmodel example. you will learn angular ng model example. you can see how to use ngmodel in angular. you will learn ngmodel in angular example.

I will give you simple example of how to use ngmodel with input field in form with angular 6, angular 7, angular 8, angular 9, angular 10, angular 11, angular 12, angular 13, angular 14, angular 15, angular 16 and angular 17 application.

*ngModel will help to bind input fiel. you can create form control instance using ngModel. ngModel will help to access form field value, status and error status.

Here, i will give you two example so you can understand how to use ng model in angular and what is ng model in angular.

1) NgModel Simple Example

2) NgModel with Form Example

1) NgModel Simple Example

Before we use ng model, we must need to import "FormsModule" from '@angular/forms'; in module.ts file as bellow:

src/app/app.module.ts

import { NgModule } from '@angular/core';

import { BrowserModule } from '@angular/platform-browser';

import { FormsModule } from '@angular/forms';

import { AppComponent } from './app.component';

@NgModule({

imports: [ BrowserModule, FormsModule ],

declarations: [ AppComponent],

bootstrap: [ AppComponent ]

})

export class AppModule { }

src/app/app.component.ts

import { Component } from '@angular/core';

@Component({

selector: 'my-app',

templateUrl: './app.component.html',

styleUrls: [ './app.component.css' ]

})

export class AppComponent {

name: string = 'Hardik';

setValueName() {

this.name = 'Savani';

}

}

src/app/app.component.html

<h1>Angular NgModel Example - ItSolutionStuff.com</h1>

<input [(ngModel)]="name" #ctrlName="ngModel" required>

<p>Value: {{ name }}</p>

<p>For Validation: {{ ctrlName.valid }}</p>

<button (click)="setValueName()">Set Value!</button>

2) NgModel with Form Example

Before we use ng model, we must need to import "FormsModule" from '@angular/forms'; in module.ts file as bellow:

src/app/app.module.ts

import { NgModule } from '@angular/core';

import { BrowserModule } from '@angular/platform-browser';

import { FormsModule } from '@angular/forms';

import { AppComponent } from './app.component';

@NgModule({

imports: [ BrowserModule, FormsModule ],

declarations: [ AppComponent],

bootstrap: [ AppComponent ]

})

export class AppModule { }

src/app/app.component.ts

import { Component } from '@angular/core';

import {NgForm} from '@angular/forms';

@Component({

selector: 'my-app',

templateUrl: './app.component.html',

styleUrls: [ './app.component.css' ]

})

export class AppComponent {

onSubmit(myForm: NgForm) {

console.log(myForm.value);

console.log(myForm.valid);

}

}

src/app/app.component.html

<h1>Angular NgModel Example - ItSolutionStuff.com</h1>

<form #myForm="ngForm" (ngSubmit)="onSubmit(myForm)" novalidate>

<input name="name" ngModel required #name="ngModel">

<input name="email" ngModel required #email="ngModel">

<button>Submit</button>

</form>

<p>Name Field Value: {{ name.value }}</p>

<p>Name Field Is Valid?: {{ name.valid }}</p>

<p>Email Field Value: {{ email.value }}</p>

<p>Email Field is Valid?: {{ email.valid }}</p>

<p>Form value: {{ myForm.value | json }}</p>

<p>Form valid: {{ myForm.valid }}</p>

You can see bellow preview:

Output:

{name: "Hardik", email: "savanihd@gmail.com"}

true

I hope it can help you...

Tags :
Shares