Angular Forms In Depth Angular 17

Build complex enterprise data forms with the powerful Angular 17 Forms module
Angular Forms In Depth Angular 17
File Size :
1.71 GB
Total length :
6h 48m



Angular University


Last update




Angular Forms In Depth Angular 17

What you’ll learn

Code in Github repository with downloadable ZIP files per section
Learn all about Template-Driven Forms
Learn all about Reactive Forms
Build custom validators, including asynchronous and multi-field validators
Build custom form controls, including a file upload component
Build reusable nested forms
Build a large production-scale multi-step enterprise form

Angular Forms In Depth Angular 17


Some base knowledge of Angular and Typescript is all that is needed


This course is an in-depth guide to Angular template-driven and reactive forms, and it comes with a running Github repository.This Course In a NutshellAngular is very often used to build in-house enterprise applications, which are usually quite form-intensive. This type of application usually has a large number of complex data entry forms, with all sorts of complex form validation rules.Angular provides us with all the tools that we need to build these complex forms in a scalable and user-friendly way via the Angular Forms module.There are two types of forms available: template-driven and reactive forms, and we will cover both types of forms in detail in this course. We will also compare them and explain when to use each form type and why.Course OverviewWe will start this course by implementing a simple form using template-driven forms and ngModel. We will understand exactly how ngModel and ngForm work under the hood and the several ways of using these directives for both data binding and form validation.We will learn template-driven forms in detail, including how to build custom form validators using custom directives. Next, we will refactor the same template-driven form that we have built into a reactive form, and we will compare the two approaches.We will then use reactive forms to build a much more complex data entry form with all sorts of different types of controls, nested groups, arrays of controls, custom validators, asynchronous validators, multi-field validations, form draft pre-saving, and much more.The multi-step reactive form that we will be building will be something very close to what you will find in a production application, and it allow us to easily demonstrate all the powerful features of reactive forms in one large step-by-step exercise.We will learn how to build reusable nested forms (like an address form), and we will also cover file upload in detail. We will build a custom file upload control with a progress indicator and cancel upload capabilities.We will finish the course by providing a complete example demonstrating how to use Form Arrays.Table of ContentsThis course covers the following topics:- Introduction to the Angular Forms module- Angular Material form components- Template-driven Forms – how does ngModel work?- Typical Form validation rules- Form field validation error messages- Using ngModel for one-way binding and bi-directional data binding- Understanding ngModelOptions in detail- Template-driven form custom validator- How to use the FormBuilder service- Refactoring of a form from template-driven to a reactive form- Comparison between template-driven and reactive forms – when to use each and why- Why are they called reactive forms? Understanding the multiple Observables available- How to reset and set new values in a reactive form- Development of a complex form using reactive forms- How to use all types of commonly used form controls: normal inputs, text areas, radio buttons, checkboxes, calendars, auto-completion, etc.- The formGroup and formControlName, and formControl directives- Reactive forms custom validators – multi-field validation- Backend validation of a form field using async validators- Dependent fields – how to enable or disable some form fields depending on the values of other fields- Pre-saving a form draft- Building a multi-step form with Angular Material- Reusable nested forms (an address form)- Custom File Upload Form Control- Form ArraysWhat Will you Learn In this Course?At the end of the course, you will have learned everything that you need to know for designing and developing complex data entry forms, that are both maintainable and user-friendlyYou will be able to implement all sorts of commonly needed form validation rules, including the most advanced scenariosYou will feel comfortable using both template-driven and reactive forms, and you will know when to use each and whyHave a look at the course free lessons below, and please enjoy the course!


Section 1: Introduction

Lecture 1 Angular Forms In Depth -Helicopter View


Lecture 3 Angular Forms In Depth – Development Environment Setup

Lecture 4 Introduction to Angular Forms – why do we need a Forms module?

Lecture 5 Introduction to Angular Material Form Controls

Section 2: Template Driven Forms In Depth

Lecture 6 Introduction to Template Driven Forms – the ngForm Directive

Lecture 7 Understanding how the Angular ngModel Directive Works

Lecture 8 Introduction to Form Validation

Lecture 9 Understanding Angular Forms CSS State Classes – ng-valid ng-dirty ng-touched

Lecture 10 How to Display Error Messages in an Angular Form

Lecture 11 Learn All the Built-in Template-Driven Form Validators

Lecture 12 How to use ngSubmit – Disabling the Form Submit button

Lecture 13 Advanced ngModel – ngModelChange and the ngModelOptions updateOn Property

Lecture 14 Advanced ngModel – ngModelOptions In Detail

Lecture 15 Understanding ngModel One Way and Bidirectional Data Binding

Lecture 16 Template Driven Forms Custom Field Validator – a Password Strength Validator

Lecture 17 How to write a Custom Form Field Validator Function

Lecture 18 Implementing a Custom Form Field Validation Directive

Lecture 19 Multiple error messages per form field – Understanding the problem

Lecture 20 The onlyOneError Custom Pipe – API Design

Lecture 21 The onlyOneError Custom Pipe – Step-by-Step Implementation

Section 3: Introduction to Angular Reactive Forms

Lecture 22 Introduction to Angular Reactive Forms

Lecture 23 Introduction to Reactive Forms – Step-by-Step Example

Lecture 24 Reactive Forms – The Form Control Directive and Custom Validators

Lecture 25 The Form Builder API – Writing much more concise Reactive Forms

Lecture 26 Comparing Reactive and Template Driven Forms

Lecture 27 Angular Strictly Typed Forms

Lecture 28 Non Nullable Form Builder

Section 4: Angular Reactive Forms In Depth

Lecture 29 New Section – Advanced Reactive Forms

Lecture 30 Building an Angular Multi-Step Reactive Form with Angular Material

Lecture 31 Angular Asynchronous Form Validators

Lecture 32 Angular Forms Controls – How to add a DatePicker field to a Reactive Form

Lecture 33 Angular Form Controls – Checkbox and Text Area

Lecture 34 Angular Selection Dropdown Form Control – Step-by-Step Example

Lecture 35 Multi-Step Forms – Displaying an Error Message per Step

Lecture 36 Reactive Forms – Dynamically Enabling and Disabling Form Fields

Lecture 37 Angular Material Date Range Selector – Step-by-Step Example

Lecture 38 Reactive Forms Multi-field Custom Validation

Lecture 39 How to implement Form Draft Pre-Save using the valueChanges Observable API

Section 5: Angular Custom Form Controls

Lecture 40 New Section – Angular Custom Form Controls – a File Upload Component

Lecture 41 Custom File Upload Component – Step-by-Step Implementation

Lecture 42 Angular File Upload – Opening a File Upload Dialog

Lecture 43 Angular File Upload – Uploading to a Node Server using the HTTP Client

Lecture 44 Implementing a File Upload Progress Indicator

Lecture 45 Understanding the Angular Forms ControlValueAccessor Interface

Lecture 46 ControlValueAccessor Interface – Step-by-Step Implementation

Lecture 47 ControlValueAccessor – Setting Up DI Configuration and Demo

Lecture 48 Angular Custom Form Controls – The Validator Interface

Lecture 49 What is a Reusable Nested Form?

Lecture 50 How to Use ControlValueAccessor to implement a Nested Form

Section 6: Form Arrays In Depth

Lecture 51 New Section – Setting Up Step 3 of our Multi-step Form

Lecture 52 Preparing Step 3 of our Multi-Step Form

Lecture 53 Angular Form Arrays – Step-by-Step Example

Lecture 54 Angular Multi-Step Form – Final Demo

Section 7: Conclusion

Lecture 55 Bonus Lecture

Lecture 56 Angular Forms In Depth – Conclusions & Key Takeaways

Angular Developers, trying to Learn in Depth everything about Angular Forms

Course Information:

Udemy | English | 6h 48m | 1.71 GB
Created by: Angular University

You Can See More Courses in the Developer >> Greetings from

New Courses

Scroll to Top