WA3076

Advanced Angular Programming Training

This Advanced Angular training course will take you deeper into the platform. This course gives experienced Angular developers more tools and techniques to improve the functionality and performance of their Angular projects.
Course Details

Duration

2 days

Prerequisites

  • A very good understanding of Angular
  • Experience using Angular (recommended but not required)
  • Taken our Introduction to Angular Programming course or have equivalent experience
Course Outline
  • The Angular Component Router
    • The Component Router
    • View Navigation
    • The Angular Router API
    • Creating a Router Enabled Application
    • Hosting the Routed Components
    • 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 Constructor Method
    • Observable Operators
    • The map and filter Operators
    • The flatMap() Operator
    • The tap() Operator
    • The zip() Combinator
    • Caching HTTP Response
    • Making Sequential HTTP Calls
    • Making Parallel Calls
    • Customizing Error Object with catchError()
    • Error in Pipeline
    • Error Recovery
  • Advanced Routing
    • Routing Enabled Feature Module
    • Using the Feature Module
    • Lazy Loading the Feature Module
    • Creating Links for the Feature Module Components
    • More About Lazy Loading
    • Preloading Modules
    • 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
  • Unit Testing Angular Applications
    • Unit Testing Angular Artifacts
    • Introduction to Jasmine and Karma
    • Jasmine Test Suites
    • Jasmine Specs (Unit Tests)
    • Expectations (Assertions)
    • Matchers
    • Examples of Using Matchers
    • Using the not Property
    • Setup and Teardown in Unit Test Suites
    • Example of beforeEach and afterEach Functions
    • Testing a Service
    • Injecting a Service Instance
    • Test a Synchronous Method
    • Test an Asynchronous Method
    • Using Mock HTTP Client
    • Supplying Canned Response
    • Testing a Component
    • Simulating User Interaction
    • Code Coverage testing
  • Debugging
    • Overview of Angular Debugging
    • Viewing TypeScript Code in Debugger
    • Using the debugger Keyword
    • Debug Logging
    • What is Angular DevTools?
    • Using Angular DevTools
    • Angular DevTools - Component Structure
    • Angular DevTools - Change Detection Execution
    • Catching Syntax Errors