Skip to content

Instantly share code, notes, and snippets.

<form>
<label>
Name:
<input type="text" name="name" required>
</label>
<button type="submit">Submit</button>
</form>
<form #myForm="ngForm">
<label>
Name:
<input type="text" name="name" [(ngModel)]="name" required>
</label>
<button type="submit">Submit</button>
</form>
<form #myForm="ngForm">
<div ngModelGroup="user">
<label>
Name:
<input type="text" name="name" [(ngModel)]="name" required>
</label>
<div *ngIf="myForm.controls['user']?.controls['name'].invalid && myForm.controls['user']?.controls['name'].touched">
<div *ngIf="myForm.controls['user']?.controls['name'].errors.required">Name is required</div>
</div>
</div>
import { Component } from '@angular/core';
@Component({
selector: 'app-form',
templateUrl: './form.component.html',
})
export class FormComponent {
name: string;
onSubmit() {
<form #myForm="ngForm" (ngSubmit)="onSubmit()">
<div ngModelGroup="user">
<label>
Name:
<input type="text" name="name" [(ngModel)]="name" required>
</label>
<div *ngIf="myForm.controls['user']?.controls['name'].invalid && myForm.controls['user']?.controls['name'].touched">
<div *ngIf="myForm.controls['user']?.controls['name'].errors.required">Name is required</div>
</div>
</div>