Skip to content

PacktPublishing/Reactive-Patterns-with-RxJS-and-Angular-Signals-Second-Edition

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

59 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Reactive Patterns with RxJS and Angular Signals - Second Edition

Book Name

This is the code repository for Reactive Patterns with RxJS and Angular Signals - Second Edition, published by Packt.

Elevate your Angular 18 applications with RxJS Observables, subjects, operators, and Angular Signals

What is this book about?

This RxJS book will help you understand the core concepts of RxJS and provide practical patterns to make your code more reactive and declarative. You’ll also understand Angular Signals, which provide another way to improve code reactivity.

This book covers the following exciting features:

  • Get to grips with RxJS core concepts such as Observables, subjects, and operators
  • Use the marble diagram in reactive patterns
  • Delve into stream manipulation, including transforming and combining them
  • Understand memory leak problems using RxJS and best practices to avoid them
  • Build reactive patterns using Angular Signals and RxJS
  • Explore different testing strategies for RxJS apps
  • Discover multicasting in RxJS and how it can resolve complex problems
  • Build a complete Angular app reactively using the latest features of RxJS and Angular

If you feel this book is for you, get your copy today!

https://www.packtpub.com/

Instructions and Navigations

All of the code is organized into folders. For example, Chapter02.

The code will look like the following:

import { Injectable } from '@angular/core';
import { HttpClient } from '@angular/common/http';
import { Observable} from 'rxjs';

Following is what you need for this book: If you're a developer working with Angular and RxJS, this book is for you. Designed for anyone at a beginner level in both Angular and RxJS, this book will help you gain experience and harness the potential of RxJS or benefit you if you’re looking to leverage the reactive paradigm within your Angular applications. This book assumes some familiarity with Angular, basic RxJS, and TypeScript, as well as foundational knowledge of functional programming.

With the following software and hardware list you can run all code files present in the book (Chapter 1-13).

Software and Hardware List

Chapter Software required OS required
1-13 Angular 17 and above Windows, macOS, or Linux
1-13 TypeScript 5.4.2 Windows, macOS, or Linux
1-13 RxJS 7.8.1 Windows, macOS, or Linux
1-13 PrimeNG 17.10.0 Windows, macOS, or Linux
1-13 Bootstrap 5.0.0 Windows, macOS, or Linux

Related products

Get to Know the Author

Lamis Chebbi is a Google Developer Expert for Angular. She is the author of Reactive Patterns with RxJS for Angular. She is an enthusiastic software engineer with a strong passion for the modern web. She's the founder of Angular Tunisia, a member of the WWCode community, a speaker, a content creator, and a trainer. She has been into Angular for the past few years and loves to share her knowledge about Angular through participating in workshops and organizing training sessions. Empowering women and students is one of her highest priorities. Besides Angular and the web, Lamis loves music, traveling, chromotherapy, and volunteering. Last but not least, she's a forever student.

Other books by the author

Errata

  • Page 92: Under the heading Exploring the reactive pattern for the autosave feature, in the second paragraph, this.http.post<Recipe>(`${BASE_PATH}/recipes`, formValue should be this.http.post<Recipe>(`${BASE_PATH}/recipes`, formValue). The closing bracket ")" is missing at the end.
  • Page 103: In the last sentence at the end of the page, "concatMap" should be "switchMap". Thus, the sentence becomes "switchMap will issue a GET request for every unique user’s input and ensure only the latest search results are displayed, canceling previous requests."
  • Page 128: Under the heading Modifying a writable Signal, the first sentence mentions "the creation function". It should be "the signal function".
  • Page 135: In the second sentence of the first paragraph, "BehaviourSubject" should be "BehaviorSubject".
  • Page 141: Under the heading Sharing data using Signals, the first code block snippet should be considered with the following format:
    export class SharedDataService {
      private selectedRecipeSubject = new BehaviorSubject<Recipe>({});
      selectedRecipeAction$ = this.selectedRecipeSubject.asObservable();
      updateSelectedRecipe(recipe:Recipe) {
        this.selectedRecipeSubject.next(recipe);
      }
    }
  • Page 145: In the third point of the list, "AddressLine1" should be "addressLine1".
  • Page 145: In the third line of the last code snippet, < app-shipping [label]="addressAsSignalProperty()"> should be < app-shipping [addressLine1]="addressAsSignalProperty()">.
  • Page 153: There's a typo in the third paragraph. "ubscriber" should be "subscriber".
  • Page 158: Under the heading replaySubject, "replaySubject is a subject variant, similar to plainSubject" should be "ReplaySubject is a subject variant, similar to Subject".
  • Page 161: In the second paragraph, PlainSubject should be Subject.
  • Page 170: In the sentence "This is a known RXJS pattern for executing a treatment every x seconds.", "RXJS" should be "RxJS".
  • Page 208: The repository link should be: https://github.com/PacktPublishing/Reactive-Patterns-with-RxJS-and-Angular-Signals-Second-Edition/tree/main/Chap13. While the current link is different, clicking on it will lead to the correct page.

About

Reactive Patterns with RxJS and Angular Signals - Second Edition, published by Packt

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 5