Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Migration to Signals, Resource API, and NgRx S...
Search
Manfred Steyer
PRO
October 21, 2025
Programming
0
140
Migration to Signals, Resource API, and NgRx Signal Store
Manfred Steyer
PRO
October 21, 2025
Tweet
Share
More Decks by Manfred Steyer
See All by Manfred Steyer
Rethinking Angular: The Future with Signal Store and the New Resource API @w-jax 2025, Munich
manfredsteyer
PRO
0
34
Premier Disciplin for Micro Frontends Multi Version/ Framework Scenarios
manfredsteyer
PRO
0
29
The Missing Link in Angular's Signal Story: Resource API and httpResource
manfredsteyer
PRO
0
36
Rethinking Angular: The Future with Signals and the New Resource API @iJS Munich 2025
manfredsteyer
PRO
0
67
Reactivity, Reimagined: Angular Signals at Every Layer
manfredsteyer
PRO
0
72
Angular Architecture Workshop @AngularDays in Berlin 2025
manfredsteyer
PRO
0
73
Reactive Thinking with Signals and the Resource API
manfredsteyer
PRO
0
120
All About Angular's New Signal Forms
manfredsteyer
PRO
0
230
Your Perfect Project Setup for Angular @BASTA! 2025 in Mainz
manfredsteyer
PRO
0
240
Other Decks in Programming
See All in Programming
ビルドプロセスをデバッグしよう!
yt8492
0
250
ALL CODE BASE ARE BELONG TO STUDY
uzulla
30
6.9k
チームのテスト力を総合的に鍛えてシフトレフトを推進する/Shifting Left with Software Testing Improvements
goyoki
3
800
GC25 Recap: The Code You Reviewed is Not the Code You Built / #newt_gophercon_tour
mazrean
0
140
オンデバイスAIとXcode
ryodeveloper
0
400
開発組織の戦略的な役割と 設計スキル向上の効果
masuda220
PRO
10
2.1k
CSC305 Lecture 13
javiergs
PRO
0
360
エンジニアインターン「Treasure」とHonoの2年、そして未来へ / Our Journey with Hono Two Years at Treasure and Beyond
carta_engineering
0
490
퇴근 후 1억이 거래되는 서비스 만들기 | 내가 AI를 사용하는 방법
maryang
2
420
Register is more than clipboard
satorunooshie
1
390
CSC509 Lecture 11
javiergs
PRO
0
290
contribution to astral-sh/uv
shunsock
0
580
Featured
See All Featured
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.5k
The Pragmatic Product Professional
lauravandoore
36
7k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.2k
[RailsConf 2023] Rails as a piece of cake
palkan
57
6k
Testing 201, or: Great Expectations
jmmastey
46
7.7k
The Art of Programming - Codeland 2020
erikaheidi
56
14k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
A designer walks into a library…
pauljervisheath
209
24k
Why Our Code Smells
bkeepers
PRO
340
57k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
15k
Mobile First: as difficult as doing things right
swwweet
225
10k
How to Ace a Technical Interview
jacobian
280
24k
Transcript
@ManfredSteyer @ManfredSteyer Migration to Signals, Resource API, and NgRx Signal
Store Manfred Steyer, ANGULARarchitects.io
@ManfredSteyer Application Code as a Script
@ManfredSteyer Signals => Reactive Programming => Paradigm Shift!
@ManfredSteyer Marble Run
@ManfredSteyer Marble Run Data Binding
@ManfredSteyer Agenda #1 Signals #2 Resource API #3 Effects #4
SignalStore #5 Mutation API #6 Signal Forms
@ManfredSteyer About me… Manfred Steyer, ANGULARarchitects.io (Remote) Angular Workshops and
Consulting Google Developer Expert for Angular Blog, Books, Articles, and Talks about Angular Manfred Steyer
@ManfredSteyer @ManfredSteyer 8 Signals 101
@ManfredSteyer Signals: Simple Reactivity Signal as Producer 4711 Consumer read
set notify 4712
@ManfredSteyer Component With Signals flights = signal<Flight[]>([]); const flights =
await this.flightService.findAsPromise(from, to); this.flights.set(flights); <div *ngFor="let f of flights()"> <flight-card [item]="f" /> </div>
@ManfredSteyer @ManfredSteyer 11 DEMO
@ManfredSteyer @ManfredSteyer 12 Race Conditions
@ManfredSteyer Resource Prevents Race Conditions Pancakes Sacher Cake Ice Cream
Pancakes
@ManfredSteyer Resource Prevents Race Conditions Pancakes Sacher Cake Ice Cream
Pancakes „switchMap semantics“
@ManfredSteyer @ManfredSteyer 15 Effects
@ManfredSteyer Connecting Reactive and Imperative World
@ManfredSteyer
@ManfredSteyer @ManfredSteyer 18 • Drawing on a canvas • Manual
DOM manipulations • Logging • Synching with LocalStore Ideal-typical Tasks Rendering (and similar tasks …) Stuff, you cannot do with data binding
@ManfredSteyer @ManfredSteyer 19 DEMO
@ManfredSteyer @ManfredSteyer 20 Architecture Rule #1 Derive state where possible
(sync: computed, async: Resource API) Architecture Rule #2 Avoid effects for triggering business logic! Architecture Rule #3 Reactive Helpers (e.g., Resource API) streamline your reactive flow Architecture Rules
@ManfredSteyer @ManfredSteyer 21 Stores
@ManfredSteyer Stores Streamline Reactive Flow Component Store "Intention" Signal sync/
async computed() computed()
@ManfredSteyer @ManfredSteyer 23 Two Reasons for a Store Manage State
Streamline Dataflow
@ManfredSteyer
@ManfredSteyer
@ManfredSteyer
@ManfredSteyer @ManfredSteyer 27 NGRX Signal Store
@ManfredSteyer NGRX Signal Store export const FlightBookingStore = signalStore( {
providedIn: 'root' }, […] );
@ManfredSteyer NGRX Signal Store export const FlightBookingStore = signalStore( {
providedIn: 'root' }, withState({ from: 'Paris', to: 'London', […] }), […] );
@ManfredSteyer NGRX Signal Store export const FlightBookingStore = signalStore( {
providedIn: 'root' }, withState({ from: 'Paris', to: 'London', […] }), withComputed(([…]) => ({ […] })), withMethods(([…]) => ({ })), withHooks({ […] }) );
@ManfredSteyer Extensions export const FlightBookingStore = signalStore( { providedIn: 'root'
}, withState({ from: 'Paris', to: 'London', […] }), withComputed(([…]) => ({ […] })), withMethods(([…]) => ({ })), withHooks({ […] }), withResource([…]}), withDevtools([…]}), withUndoRedo(), );
@ManfredSteyer @ManfredSteyer 32 DEMO
@ManfredSteyer @ManfredSteyer 33 Modern Angular 2nd Edition angularArchitects.io/modern Free eBook
@ManfredSteyer Summary Signals: Reactive Programming Derive State Effects: Not for
Biz Logic Stores Streamline Reactivity
@ManfredSteyer Marble Run
@ManfredSteyer Marble Run Data Binding
@ManfredSteyer 37 [Social Media] Manfred Steyer [web] ANGULARarchitects.io Manfred Steyer
@ Manfred Steyer Slides & Examples Remote Company Workshops and Consulting http://angulararchitects.io