Angular 12

Follow us on

Outline of Comprehensive Angular 12 Programming Training

Introducing Angular

  • What is Angular?
  • Central Features of the Angular Framework
  • Why Angular?
  • Building Blocks of an Angular Application
  • Basic Architecture of an Angular Application
  • Installing and Using Angular
  • A Basic Angular Application
  • Anatomy of a Basic Application
  • The Main Component File
  • The Application Module File
  • The index.html File
  • The Bootstrap File
  • Running the Application
  • Building the Application

Development Setup of Angular

  • Angular Development Lifecycle
  • Angular is Modular
  • What is Node.js?
  • Installing Node.js and NPM
  • Node Package Manager (NPM)
  • Package Descriptor File – package.json
  • Semantic Version Numbering
  • Package Version Numbering Syntax
  • Updating Packages
  • Uninstalling Packages
  • Installing Angular Packages
  • Angular CLI
  • Creating a New Project
  • Angular
  • Development
  • Dependencies
  • TypeScript Typings
  • Testing Tools
  • Development Web Server
  • Configuring the Web Server
  • The Build System
  • Configuring the Build

Introduction to TypeScript and ES6

  • Programming Languages for Use with Angular
  • TypeScript Syntax
  • Programming Editors
  • The Type System – Defining Variables
  • The Type System – Defining Arrays
  • Type in Functions
  • Type Inference
  • The Type System – Classes & Objects
  • Class Constructors
  • Class Constructors – Alternate Form
  • Interfaces
  • Working with ES6 Modules
  • Visibility Control
  • var, let and const – defined
  • var, let and const – usage
  • Arrow Functions
  • Arrow Function Compact Syntax
  • Arrow Function and Caller Context
  • Template Strings
  • Template Strings – Variables and Expressions
  • Template Strings – Multiline
  • Generics – Class
  • Generics – Methods
  • Generics – Restricting Types
  • Generics – Restricting Types: Example
  • TypeScript Transpilation

Components in Angular

  • What is a Component?
  • An Example Component
  • The Component Class
  • Adding a Component to Its Module
  • Creating a Component Using Angular CLI
  • Developing a Simple Login Component
  • Component Template
  • Login Component: Add HTML
  • The HTML Component Template
  • The templateUrl property
  • Login Component: Add CSS Styling
  • Login Component: Hook Up Input Fields and Button
  • Login Component: Fields & Button in the Component Class
  • Component Decorator Properties
  • Component Hierarchy
  • The Application Root Component
  • Using a Regular Component
  • The Build System
  • Component Lifecycle Hooks
  • Using a Lifecycle Hook:
  • OnInit

Data and Event Binding

  • Binding Syntax
  • One-Way Output Binding
  • Binding Displayed Output Values
  • Setting Component Properties
  • More About Setting Properties
  • Setting DOM Element Properties
  • Event Binding
  • Binding Events Examples
  • Firing Event from a Component
  • @Output() Example – Child Component
  • @Output() Example – Parent Component
  • Two-Way Binding of Input Fields
  • Input Binding Examples
  • Two Way Binding in a Component
  • Use Two Way Binding
  • Breaking Down ngModel

Attribute Directives

  • What are Attribute Directives
  • Apply Styles by Changing CSS Classes
  • Changing Classes – Example
  • Applying Styles Directly
  • Applying Styles Directly – Example
  • Controlling Element Visibility
  • Setting Image Source Dynamically
  • Setting Hyperlink Source Dynamically
  • Writing a Custom Attribute Directive
  • Using a Custom Attribute Directive
  • Supplying Input to a Directive
  • Handling Event from a Custom Directive

Structural Directives

  • Structural Directives
  • Adding and Removing Elements Dynamically
  • If-Else Syntax of ngIf
  • Looping Using ngFor
  • ngFor – Basic Example
  • Creating Tables with ngFor
  • ngFor Local Variables
  • Manipulating the Collection
  • Example – Deleting an Item
  • Swapping Elements with ngSwitch
  • ngSwitch – Basic Syntax

Template Driven Forms

  • Template Driven Forms
  • Importing Forms Module
  • A Basic Angular Form
  • Binding Input Fields
  • Accessing the NgForm Directive
  • Binding the Form Submit Event
  • The Submit Function
  • Basic HTML5 Validation – “required” Attribute
  • HTML5 vs. Angular Validation
  • Angular Validators
  • The NgModel Directive
  • Controlling when validation is applied
  • Displaying
  • Form
  • Validation State
  • Displaying
  • Field
  • Validation State
  • Displaying Validation State Using Classes
  • Disabling Submit when Form is Invalid
  • Submitting the Form
  • Binding to Object Variables
  • Binding to Object Variables – Code
  • Additional Input Types
  • Checkboxes
  • Select (Drop Down) Fields
  • Rendering Options for Select (Drop Down)
  • Date fields
  • Radio Buttons

Reactive Forms

  • Reactive Forms Overview
  • The Building Blocks
  • Import ReactiveFormsModule
  • Construct a Form
  • Design the Template
  • FormControl Constructor
  • Getting Form Values
  • Setting Form Values
  • The Synchronous Nature
  • Subscribing to Input Changes
  • Validation
  • Built-In Validators
  • Showing Validation Error
  • Custom Validator
  • Using a Custom Validator
  • Sub FormGroups – Component Class
  • Sub FormGroups – HTML Template
  • Why Use Sub FormGroups

Angular Modules

  • Why Angular Modules?
  • But, We Already Had ES6 Module
  • Angular Built-in Modules
  • The Root Module
  • Feature Modules
  • Create Feature Module Using CLI
  • The Module Class
  • @NgModule Properties
  • Using One Module From Another
  • Importing BrowserModule or CommonModule
  • Lazy-Loaded Modules
  • How to Organize Modules?
  • Third Party Modules

Services and Dependency Injection

  • What is a Service?
  • Creating a Basic Service
  • What is Dependency Injection?
  • What Dependency Injection Looks Like
  • Injectors
  • Injector Hierarchy
  • Register a Service with a Module Injector
  • Registering a Service with the Root Injector
  • Registering a Service with a Component’s Injector
  • Where to Register a Service?
  • Dependency Injection in Other Artifacts
  • Providing an Alternate Implementation
  • Dependency Injection and @Host
  • Dependency Injection and @Optional

HTTP Client

  • The Angular HTTP Client
  • Using The HTTP Client – Overview
  • Importing HttpClientModule
  • Simple Example
  • Service Using HttpClient
  • ES6 Import Statements
  • Making a GET Request
  • What does an Observable Object do?
  • Using the Service in a Component
  • The PeopleService Client Component
  • Error Handling
  • Making a POST Request
  • Making a PUT Request
  • Making a DELETE Request

Pipes and Data Formatting

  • What are Pipes?
  • Built-In Pipes
  • Using Pipes in HTML Template
  • Chaining Pipes
  • Using Pipes in Code
  • Internationalized Pipes (i18n)
  • Loading Locale Data
  • Decimal Pipe
  • Currency Pipe
  • Custom Pipes
  • Custom Pipe Example
  • Using Custom Pipes
  • Using a Pipe with ngFor
  • A Filter Pipe
  • A Sort Pipe
  • Pipe Category: Pure and Impure
  • Pure Pipe Example
  • Impure Pipe Example

Introduction to Single Page Applications

  • What is a Single Page Application (SPA)
  • Traditional Web Application
  • SPA Workflow
  • Single Page Application Advantages
  • HTML5 History API
  • SPA Challenges
  • Implementing SPA’s Using Angular
  • Summary
  • Chapter 15. The Angular Component Router
  • The Component Router
  • View Navigation
  • The Angular Router API
  • Creating a Router Enabled Application
  • Hosting the Routed Component
  • Navigation Using Links and Buttons
  • Programmatic Navigation
  • Passing Route Parameters
  • Navigating with Route Parameters
  • Obtaining the Route Parameter Values
  • Retrieving the Route Parameter Synchronously
  • Retrieving a Route Parameter Asynchronously
  • Query Parameters
  • Supplying Query Parameters
  • Retrieving Query Parameters Asynchronously
  • Problems with Manual URL entry and Bookmarking

Advanced HTTP Client

  • Request Options
  • Returning an HttpResponse Object
  • Setting Request Headers
  • Creating New Observables
  • Creating a Simple Observable
  • The Observable.create() Method
  • Observable Operators
  • More About map
  • Piping Operators
  • The flatMap() Operator
  • The tap() Operator
  • The zip() Operator
  • Caching HTTP Response
  • Making Sequential HTTP Calls
  • Making Parallel Calls
  • Customizing Error Object with catchError()
  • Error in Pipeline
  • Error Recovery

Advanced Routing

  • Routing Overview
  • Routing Enabled Project
  • Routing Enabled Feature Module
  • Using the Feature Module
  • Lazy Loading the Feature Module
  • Creating Links for the Feature Module Components
  • More About Lazy Loading
  • routerLinkActive binding
  • Default Route
  • Wildcard Route Path
  • redirectTo
  • Child Routes
  • Defining Child Routes
  • for Child Routes
  • Links for Child Routes
  • Navigation Guards
  • Creating Guard Implementations
  • Using Guards in a Route
  • Route Animations


Follow us on