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, Signal Forms, Resource AP...
Search
Manfred Steyer
PRO
March 17, 2026
Programming
430
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Migration to Signals, Signal Forms, Resource API, and NgRx Signal Store @Angular Days 03/2026 Munich
Manfred Steyer
PRO
March 17, 2026
More Decks by Manfred Steyer
See All by Manfred Steyer
Generative UI & AI-Assistants for Your Angular Solutions
manfredsteyer
PRO
1
280
Generative UI & AI-Assistants for Your Angular Solutions
manfredsteyer
PRO
0
140
Nostalgia Meets Technology: Super Mario with TypeScript
manfredsteyer
PRO
0
210
Signal Forms: Details & Live Coding @enterJS 2026 in Mannheim
manfredsteyer
PRO
0
250
Strategic Design in the Frontend: Moduliths & Micro Frontends @DDDEurope
manfredsteyer
PRO
0
170
Agentic UI
manfredsteyer
PRO
0
250
Signal Forms: Beyond the Basics @ngBaguette 2026 in Paris
manfredsteyer
PRO
0
300
Agentic UI beyond Chats Architecture Patterns & Open Standards @ngMunich 05/2026
manfredsteyer
PRO
0
250
Agentic AI in the Frontend: Architectures with Open Standards @iJS London 2026
manfredsteyer
PRO
0
180
Other Decks in Programming
See All in Programming
改善しないと、タスクが回らない。 “てんこ盛りポジション” を引き継いだ情シスの、入社3ヶ月の業務改善録
krm963
0
230
Claude Team Plan導入・ガイド
tk3fftk
0
240
人間の目はかわらない、だからJPEGは30年もつ
yuzneri
12
17k
コーディングルールの鮮度を保ちたい for SRE NEXT 2026 / keep-fresh-go-internal-conventions-sre-next-2026
handlename
0
160
生成AIで帳票OCRが「簡単に」作れる時代になった?
kon_shou
0
140
PHPだって関数型したい 〜できること、できないこと〜 / fp-in-php
jsoizo
1
260
これって Effect でできたのでは? / TSKaigi Mashup Kansai #2
susisu
0
130
【やさしく解説 設計編・中級 #4】ルールの寿命と、システムの年輪
panda728
PRO
2
180
komatsuna「分散システムにおけるバグ分析手法」
komatsunaqa
0
140
琵琶湖の水は止められてもNet--HTTPのリトライは止められない / You might be able to stop the water flow of Lake Biwa but you can't stop Net::HTTP retries
luccafort
PRO
0
500
信頼性について考えてみる(SRE NEXT 2026 miniLT)
hayama17
0
230
AI時代のPHPer生存戦略 ~「言語、もうなんでもよくない?」に本気で向き合う~
vivion
0
210
Featured
See All Featured
The Cult of Friendly URLs
andyhume
79
7k
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
230
23k
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
780
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
56k
The Cost Of JavaScript in 2023
addyosmani
55
10k
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
Odyssey Design
rkendrick25
PRO
2
740
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
123
22k
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
330
Ten Tips & Tricks for a 🌱 transition
stuffmc
0
160
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
3k
Transcript
@ManfredSteyer @ManfredSteyer Migration to Signals, Signal Forms, 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 9 Signals 101
@ManfredSteyer Signals: Simple Reactivity Signal as Producer 4711 Consumer read
set notify 4712
@ManfredSteyer @ManfredSteyer 11 Component With Signals flights = signal<Flight[]>([]); const
flights = await this.flightService.findAsPromise(from, to); this.flights.set(flights); @for(f of flights(); track f.id) { <flight-card [item]="f" /> }
@ManfredSteyer @ManfredSteyer 12 DEMO
@ManfredSteyer @ManfredSteyer 13 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 16 Effects
@ManfredSteyer Connecting Reactive and Imperative World
@ManfredSteyer
@ManfredSteyer @ManfredSteyer 19 • 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 20 DEMO
@ManfredSteyer @ManfredSteyer 21 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 22 Stores
@ManfredSteyer Stores Streamline Reactive Flow Component Store "Intention" Signal sync/
async computed() computed()
@ManfredSteyer @ManfredSteyer 24 Two Reasons for a Store Manage State
Streamline Dataflow
@ManfredSteyer
@ManfredSteyer
@ManfredSteyer
@ManfredSteyer @ManfredSteyer 28 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 33 DEMO
@ManfredSteyer @ManfredSteyer 34 Architecture, Concepts, Implementation Modern Angular 400+ pages,
PDF, EPUB Regular Free Updates! Q1/2026 Waiting List: (Early Bird Discount) angular-book.com
@ManfredSteyer Summary Signals: Reactive Programming Derive State Effects: Not for
Biz Logic Stores Streamline Reactivity
@ManfredSteyer Marble Run
@ManfredSteyer Marble Run Data Binding
@ManfredSteyer 38 [Social Media] Manfred Steyer [web] ANGULARarchitects.io Manfred Steyer
@ Manfred Steyer Slides & Examples Remote Company Workshops and Consulting http://angulararchitects.io