Udemy
    •  
    •  
    •  
    •  
    •  
    •  
    •  
    •  
Turn what you know into an opportunity and reach millions around the world.
Learn More
Your cart is empty.
Keep shopping
Angular 22 Router In Depth (Signals Edition)
Rating: 4.4 out of 5(1,750 ratings)
17,928 students

Angular 22 Router In Depth (Signals Edition)

A modern deep dive into Angular 22 routing, from core concepts to advanced navigation patterns
Last updated 8/2026
English
English [Auto],Spanish [Auto],

What you'll learn

  • Configure the router of a modern signal-based Angular application from scratch
  • Follow along with the complete course code in a GitHub repository
  • Build lazy-loaded routes, child routes, and nested router outlets
  • Use route parameters, query parameters, resolvers, and input signals
  • Implement authentication, feature-flag, child-route, and exit guards
  • Pass data between routes using state, info, and route data
  • Configure preloading strategies, router events, and loading indicators
  • Use advanced Router features, signals, view transitions, and error handling
  • Apply Angular Router best practices and avoid common routing mistakes

Course content

8 sections79 lectures9h 44m total length
  • IMPORTANT0:18
  • 00 Angular In Depth (Signals Edition) Introduction7:32

    Build and configure the Angular router from scratch, adding routes, navigations, redirects, resolvers, and guards, with lazy loading in a signals-based, zoneless app using standalone components.

  • 01 Angular Router Essentials - Routes, Router Outlets11:32

    Set up the router configuration with provide router, map routes for login and about, render them through a router outlet in the application component, enabling lazy loading with load component.

  • 02 Angular Router Navigation with routerLink and routerLinkActive6:25

    Master declarative navigation in Angular using RouterLink for absolute routes and RouterLinkActive to highlight active links, with examples for /about and /login and notes on route order and debugging.

  • 03 Setting a Page Not Found Fallback Route2:39

    Configure a page not found fallback route in the Angular router, using a double-asterisk path to catch all unmatched routes and load the page not found component via dynamic import.

  • 04 Introducing Child Routes - The Home Component7:14

    Set up the home component under the slash courses path and link child routes via a dedicated routing file, enabling lazy loading of the home component and guards and resolvers.

  • 05 Configuring a Static Route Redirect2:29

    Configure a simple static redirect from the app root to /courses by setting a top-level route with path '', using pathMatch: 'full' to trigger only on the exact root URL.

  • 06 Route Parameters and Resolvers13:22

    Learn to use route parameters and data resolvers to preload the edit screen. Implement a course resolver to fetch data and inject it into the component for seamless routing.

  • 07 Injecting Route Path Parameters and Query Parameters as Input Signals3:40

    Inject route path parameters and query parameters as input signals with the Angular router and signals. Bind inputs like course URL and mode (edit or create) directly in the component.

  • 08 Router Aware Loading Indicator12:05

    Build a router aware global loading indicator that turns on during navigation and off after completion. Adapt the loading component with router events and signals.

  • 09 Master Detail and Nested Child Routes - Setting Up The Master Page6:14

    Implement a master-detail navigation with nested child routes to display a course page featuring a persistent master area and a lesson list, enabling view course and back navigation with url.

  • 10 Implementing a Child Nested Route Outlet9:15

    Implement a child nested route outlet in angular router to enable master detail navigation, displaying a lessons list via a resolver in a secondary outlet with a default empty path.

  • 11 Implementing a Detail Child Route With Detail to Detail Navigation13:23

    Learn to implement a master-detail navigation with detail-to-detail routing in Angular. Use a lesson detail resolver, add previous/next controls, and explore navigation to self and component reuse.

  • 12 Introduction To Authentication Guards14:35

    Learn how authentication guards control navigation with canActivate in Angular routing, including front-end redirects after login and the effect of guard arrays on access, while emphasizing UX over security.

  • 14 Implementing an Authentication Guard3:16

    Implement the canActivate guard by introducing a reusable checkAuthenticated function that uses the authentication service's isLoggedIn and redirects unauthenticated users to /login via the router, parsing the url.

  • 15 Understand CanActivateChild Guards10:48

    Understand how CanActivateChild guards protect child routes after the parent is granted access, handle session expiration, and ensure proper re-authentication for nested routes in Angular router.

Requirements

  • Basic Angular knowledge is required, but no advanced Router experience is necessary
  • Basic knowledge of TypeScript, components, and dependency injection
  • A computer with Node.js and an Angular development environment installed

Description

This course is a modern, signals-based deep dive into the Angular Router, built on standalone components and zoneless change detection. It comes with a running Github repo

This Course In a Nutshell

The Angular Router is one of the least well-known parts of Angular once you dig beyond the basics. Most developers learn the essentials and stop there — not because they don't need more, but because the deeper features are rarely documented in one place or explained in a way that makes their purpose clear.

This course is a deep dive into that lesser-known territory. It covers a wide range of powerful features that solve real, recurring problems in Angular applications — problems that are otherwise surprisingly difficult to handle cleanly. Many of these features have been sitting in the router for years, quietly waiting to be discovered.

Everything is built on modern Angular — standalone components, signals, zoneless change detection, functional guards and resolvers — so the patterns you learn here are the ones that will last.

Course Overview

The router is not just one more Angular feature among many — it is the skeleton of the entire application. It determines how the app is structured, how pages load, how data reaches components, and how users move through the product. Getting it right matters more than almost anything else in an Angular application.

And yet, the router is far more feature-rich than most developers realise. Beyond the basics of routes and navigation links lies a large surface area of capabilities — many of them little known, and most of them genuinely useful once you know they exist. Features that make certain hard problems surprisingly easy.

In this course we take a pragmatic, hands-on approach. We start with an existing application with no routing at all, and we progressively configure every routing scenario you are likely to encounter in a real Angular project — from the simplest redirect to the most advanced navigation patterns.

We start from scratch and build up the route configuration step by step. We cover the essentials — lazy loading, route parameters, resolvers, navigation links, child routes — and then keep going into the parts that courses usually skip: the full guard system in all its variations, the many ways to pass data during navigation, powerful configuration options that change how the router behaves globally or per-navigation, preloading, router events, outlet lifecycle, and deep signals integration.

By the end, you will have a complete picture of what the Angular Router can do — and just as importantly, you will know which tool to reach for in each situation, and which ones to avoid.

Table of Contents

This course covers the following topics:

  • Router setup with provideRouter and feature functions

  • Functional redirects — redirectTo as a function receiving params and query params

  • Lazy loading with loadComponent and loadChildren

  • Navigation with routerLink, routerLinkActive, and ariaCurrentWhenActive

  • Route parameters and withComponentInputBinding — params, query params, and resolved data as component inputs

  • Resolvers — ResolveFn, skipping HTTP with navigation state

  • Child routes, nested outlets, and relativeTo navigation

  • Route-scoped providers — services created and destroyed with a route subtree

  • Query parameters and queryParamsHandling (preserve, merge)

  • canActivate — authentication guard with redirect to login and return URL

  • canActivateChild — protecting an entire child route subtree

  • canDeactivate — unsaved-changes confirmation dialog; bypassing the guard with info

  • canMatch — feature-flag guard and auth guard; difference from canActivate

  • Navigation extras: state, info, replaceUrl, skipLocationChange, browserUrl

  • RedirectCommand — redirecting with state from a guard

  • Router configuration: paramsInheritanceStrategy, onSameUrlNavigation, urlUpdateStrategy

  • withInMemoryScrolling and scroll position restoration

  • Custom preloading strategy — data-driven preloading with route data

  • Router events — NavigationStart/End/Cancel/Error, RouteConfigLoadStart/End

  • Building a navigation-aware loading indicator using router events

  • RouterOutlet lifecycle: (activate) and (deactivate) events

  • ROUTER_OUTLET_DATA — passing reactive signal data from parent outlet to child component

  • UrlMatcher — matching routes by numeric ID or slug

  • Signals integration — isActive signal, withViewTransitions

  • withNavigationErrorHandler — redirecting to a 404 page on resolver errors

  • Named outlets — how they work and why to avoid them

What Will You Learn In this Course?

At the end of this course, you will have a thorough, practical understanding of the Angular Router — from the foundational concepts to the most advanced features available in modern Angular.

You will know how to configure guards, resolvers, lazy loading, and preloading strategies correctly, and you will understand exactly what each guard type does differently so you can pick the right one for every situation.

You will be confident working with the signals-based Angular APIs and integrating router state into your components reactively, without workarounds or manual subscriptions.

Have a look at the course free lessons below, and please enjoy the course!

Who this course is for:

  • Angular developers who want to master the Angular Router beyond the basics
  • Developers building modern Angular applications with signals and standalone components
  • Angular developers who want practical solutions to real-world routing problems