Angular Intermediate Course

Course: 7011

All lab exercises are designed to make attendees build an entire web application step by step so that they can practice and understand how these Angular concepts come into play in an actual real-life project. This course teaches the student with the full understanding and practical use of Angular.

Download PDF
  • Duration: 3 days
  • Price: $1,895.00
Get This Course $1,895.00
February 13 - 15

9:00 AM – 4:00 PM CST

March 13 - 15

9:00 AM – 4:00 PM CST

April 10 - 12

9:00 AM – 4:00 PM CST

May 15 - 17

9:00 AM – 4:00 PM CST

June 12 - 14

9:00 AM – 4:00 PM CST

July 10 - 12

9:00 AM – 4:00 PM CST

August 14 - 16

9:00 AM – 4:00 PM CST

September 11 - 13

9:00 AM – 4:00 PM CST

October 16 - 18

9:00 AM – 4:00 PM CST

Scroll to view additional course dates

Reserve Your Seat

  • Virtual instructor Led Training
  • Complete Hands-on Labs
  • Softcopy of Courseware
  • Learning Labs
  • Virtual instructor Led Training
  • Complete Hands-on Labs
  • Softcopy of Courseware
  • Learning Labs
  • You can use your Purchase Card and checkout
  • The GSA Contract Number: 47QTCA20D000D
  • Call 800-453-5961 for details
  • Customize your class
  • Delivery Onsite or Online for your organization
  • Choice of Dates when and where you want
  • Guidance in choosing and customizing your class

Question About this Course?

Angular Intermediate Course Overview

All lab exercises are designed to make attendees build an entire web application step by step so that they can practice and understand how these Angular concepts come into play in an actual real-life project.

Prerequisite

  • Full understanding and practical use of Angular.

Angular Intermediate Agenda Topics

Node.JS and NPM

  • What is Node JS?
  • Example of server code with Node
  • What is NPM?
  • Npm install, npm update and other useful commands
  • Semantic versioning and package.json

TypeScript

  • Interfaces, classes and object inheritance
  • Usefulness of types
  • Getters, setters and static properties
  • Constructor syntax
  • Generics and advanced types
  • Modules: Export and import
  • ES6-ES7 features: Arrow functions, backticks, template expressions, object rest and spread

Building blocks of an Angular application

  • Modules and ngModule
  • Components, pipes, directives and services
  • ts
  • Importance of using angular CLI to keep project structure updated
  • Angular builds: AOT vs JIT – What to use for production
  • Build modes and environments

LAB: Angular Builds

Components

  • Template and expressions
  • Passing data to a component with @Input()
  • Practicing with Angular CLI

LAB: Creating components

Data bindings

  • One-way data bindings
  • Expressions
  • Two-way data bindings with ngModel
  • Template syntax
  • Template reference simple, virtuals

LAB: Bindings

Directives

  • What are directives for?
  • Different kinds of directives
  • ngFor
  • LAB: ngFor
  • ngIf

LAB: Hiding things

  • ngSwitch
  • ngClass and ngStyle
  • How to create a custom directive?

LAB: Custom directive

Pipes

  • What are pipes for?
  • Examples of common Angular pipes

LAB: Currency pipe

  • Pure and Impure pipes
  • How to create our own pipes?

LAB: Custom Pipe

Services and dependency injection

  • Difference between components and services
  • Dependency injection in Angular
  • Injector Tree
  • How to create a service?

LAB: Services

Reactive Programming with RxJs Observables

  • Introduction to RxJS and Reactive Programming
  • What is an observable?

LAB: Observables

  • RxJs operators
  • Examples of RxJs operators: max, merge, filter

HTTP client

  • How to use the HTTP client?
  • Http Interceptor

LAB: Using the HTTP client

  • Async pipe

LAB: Using the async pipe

Component communication and lifecycle

  • How do components share data?

LAB: Component communication

LAB: Using @Output()

  • Introduction to the component lifecycle
  • Lifecycle hooks
  • Change detection strategies

Component router

  • What is the component router?
  • Example of the component router in action
  • Child routes and route parameters

LAB: Component router

  • Guards for authentication and user rights
  • LAB: Authentication
  • Lazy-loading

Forms

  • How to handle forms with Angular?
  • Template-driven forms and reactive forms
  • Form validation and submission

LAB: Template-driven forms – Form validation

  • Custom form validator

Advanced projects and tools

  • Progressive web apps
  • Angular Console
  • Compodoc
  • Custom Elements
  • Angular Material and CDK
  • CLI Schematics
  • Angular Universal or how to pre-compile on the server
  • Angular Augury: Debugging Angular apps in Google Chrome

Testing Angular Applications

  • How to test Angular applications?
  • Karma and Jasmine

LAB: Writing Unit tests

  • Angular Test Bed
  • Mocking and stubbing with Jasmine and Angular

LAB: Writing Component Tests

Resources and best practices

  • How to use angular.io (cheatsheet, etc.)
  • Style guide and best practices
  • Official Angular blog

Question About this Course?

Need help picking the right course?

Contact Us

Call Now

Call Now800-453-5961