Get in Touch
 Duration 28 hours

Course Outline

Introduction to Angular 17

  • What is Angular?
  • Comparing Angular with React and Vue
  • Overview of Angular 17 features and architecture
  • Configuring the Development Environment

Getting Started

  • Initiating a new Angular 17 project via the Angular CLI
  • Exploring the project structure and key files
  • Running and serving the application
  • Displaying data using interpolation and expressions

Components

  • Understanding the role of components in Angular 17
  • Creating and utilising components
  • Passing data between components using inputs and outputs
  • Applying component lifecycle hooks

Directives

  • Distinguishing between structural and attribute directives
  • Implementing built-in directives such as ngIf, ngFor, ngSwitch, etc.
  • Developing and applying custom directives

Pipes

  • Understanding the purpose of pipes in Angular 17
  • Using built-in pipes such as date, currency, json, etc.
  • Creating and applying custom pipes

Services

  • Understanding the role of services in Angular 17
  • Creating and utilising services
  • Injecting dependencies using providers

Modules

  • Understanding the role of modules in Angular 17
  • Creating and utilising modules
  • Importing and exporting modules

Data Binding

  • Distinguishing between one-way and two-way data binding
  • Implementing property binding, event binding, and banana-in-a-box syntax
  • Utilising template reference variables

Routing

  • Understanding the role of routing in Angular 17
  • Defining and configuring routes
  • Navigating between routes using routerLink and router.navigate()
  • Managing route parameters, query parameters, and fragments

Forms

  • Distinguishing between template-driven and reactive forms
  • Creating and validating forms using form controls, form groups, form arrays, etc.
  • Applying built-in validators such as required, minLength, maxLength, etc.
  • Developing and implementing custom validators

HTTP Client

  • Understanding the role of the HTTP client in Angular 17
  • Constructing HTTP requests to interact with backend services
  • Handling asynchronous data streams using observables
  • Using interceptors to modify or process HTTP requests or responses

New, Declarative Control Flow

  • Examining the new template control block syntax and how it simplifies tasks like conditional rendering, looping, and handling empty collections
  • Providing examples of using the new blocks, such as @if, @else, @switch, @case, @default, @for, and @empty
  • Comparing the new syntax with previous iterations, such as *ngIf, *ngSwitch, and *ngFor
  • Discussing how the new control blocks support zoneless applications with signals

Deferred Loading Blocks

  • Explaining the concept of deferred loading and its impact on web application performance and user experience
  • Introducing the new @defer control block for lazy-loading content and dependencies
  • Providing examples of using the @defer block in various scenarios, such as loading components, directives, pipes, animations, and styles
  • Discussing the integration of the @defer block with the new view transitions API

View Transitions API

  • Explaining the purpose and benefits of the view transitions API for customising animations and view transitions
  • Introducing the new withViewTransitions directive to enable the view transitions API
  • Providing examples of using the withViewTransitions directive with different transition types, such as fade, slide, zoom, and flip
  • Discussing the interaction between the view transitions API, the Angular router, and browser history

Other Features and Improvements

  • Summarising key additional features and improvements in Angular 17, including:
  • Support for passing @Component.styles as a string
  • Lazy-loadability of Angular's animation code
  • TypeScript 5.2 support
  • Stabilisation of the core signal API
  • Removal of Node.js v16 support, with v18.13.0 as the minimum required version
  • Esbuild becoming the default builder and Vite powering the default dev server

Requirements

  • A solid understanding of HTML, CSS, and JavaScript
  • Practical experience with TypeScript and RxJS
  • General web development background

Target Audience

  • Developers looking to harness Angular 17 for creating dynamic and responsive web applications
  • Developers seeking to upskill from previous versions of Angular
  • Programmers interested in exploring the latest features and enhancements in Angular 17

Number of participants


Price per participant

Testimonials (2)

Provisional Upcoming Courses (Require 5+ participants)

Related Categories