Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Rethinking Data Access: The New httpResource in...
Search
Manfred Steyer
PRO
May 23, 2025
Programming
670
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Rethinking Data Access: The New httpResource in Angular
Manfred Steyer
PRO
May 23, 2025
More Decks by Manfred Steyer
See All by Manfred Steyer
Human in the Loop Beyond Approval: Toward True Collaboration @FrontMania 2026 in Utrecht
manfredsteyer
PRO
0
57
Agentic UI: Where the Agent meets the User @FrontMania 2026 in Utrecht
manfredsteyer
PRO
0
55
A2UI as an Architecture Question: Agentic UI Between AI Freedom and Control
manfredsteyer
PRO
0
92
AI-Ready Angular Architectures Architecture as Executable Contract
manfredsteyer
PRO
0
250
Nostalgia Meets Technology: Super Mario with TypeScript @BASTA 2026 in Mainz, Germany
manfredsteyer
PRO
0
48
Beyond Chatbots: Agentic UI with Open Standards @AGNTcon 2026 in Amsterdam
manfredsteyer
PRO
0
150
Next-Level Frontends: Agentic Web UIs Under the Hood
manfredsteyer
PRO
0
110
Agentic UI with Open Standards @ngGraz Sep 2026
manfredsteyer
PRO
0
120
Agentic UI with Open Standards @GDG Salzburg, Bgl & Prishtina
manfredsteyer
PRO
0
99
Other Decks in Programming
See All in Programming
RAG の “R” を Swift で覗いてみる 〜「意味から探す」検索の仕組み〜
nao_randd
0
160
When benchmarks go bad - what I learned from measuring performance wrong
hollycummins
0
210
半永久的に提供し続けられるプライベートクラウドを目指して ― 利用者の認知負荷を抑えるAPI抽象化とハードウェア世代交代の基盤設計
tomokon
0
480
Apple Intelligence を用いた個人情報誤送信防止、及びユーザーリクエスト体験の改善について
yukiny
0
340
Kotlinの15年とServer-Side Kotlin
n_takehata
1
140
コードで差別化できない時代の ソフトウェアエンジニアリング / Software Engineering in an Era Where Code Doesn’t Differentiate
kishida
2
170
IBM Bob Dojo #1 仕様駆動開発入門
oniak3ibm
PRO
0
380
気持ちぃ〜角丸 Squircle
ryu1013
0
290
JRuby: Past, Present, and Future
headius
0
230
現場と育てるRailsモデリング 〜Spreadsheetから始めたモデル設計〜
siroemk
2
330
AI主導のプログラミング学習アプリを作ってみた
econanringo
0
170
ジョジョの世界をXRで再現する
mofurune
0
160
Featured
See All Featured
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.6k
エンジニアに許された特別な時間の終わり
watany
109
250k
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
2
410
New Earth Scene 8
popppiees
4
2.7k
Building an army of robots
kneath
307
47k
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
560
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.6k
4 Signs Your Business is Dying
shpigford
187
23k
How to build a perfect <img>
jonoalderson
1
6.1k
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
300
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
6.1k
Heart Work Chapter 1 - Part 1
lfama
PRO
10
37k
Transcript
• Textmasterformat bearbeiten • Zweite Ebene Mastertextformat bearbeiten Rethinking Data
Access: The New httpResource in Angular ANGULARarchitects.io
• Textmasterformat bearbeiten • Zweite Ebene Mastertextformat bearbeiten Application Code
as a Script
• Textmasterformat bearbeiten • Zweite Ebene Mastertextformat bearbeiten Marble Run
• Textmasterformat bearbeiten • Zweite Ebene Mastertextformat bearbeiten Marble Run
Data Binding
• Textmasterformat bearbeiten • Zweite Ebene Mastertextformat bearbeiten 5 1)
Signal Graph 2) httpResource 3) DEMO 4) Signal Graph in Demo 5) Live Coding Agenda
• Textmasterformat bearbeiten • Zweite Ebene Mastertextformat bearbeiten 6 About
Me (Remote) Angular Workshops and Consulting Google Developer Expert for Angular Blog, Books, Articles, and Talks about Angular Manfred Steyer, ANGULARarchitects.io
• Textmasterformat bearbeiten • Zweite Ebene Mastertextformat bearbeiten 7 Reactive
Graph
• Textmasterformat bearbeiten • Zweite Ebene Mastertextformat bearbeiten 8 Building
Your Reactive Graph desserts = signal<Dessert[]>([]); ratings = signal<DessertIdToRatingMap>({}); ratedDesserts = computed(() => this.toRated(this.desserts(), this.ratings()));
• Textmasterformat bearbeiten • Zweite Ebene Mastertextformat bearbeiten 9 Building
Your Reactive Graph desserts = signal<Dessert[]>([]); ratings = signal<DessertIdToRatingMap>({}); ratedDesserts = computed(() => this.toRated(this.desserts(), this.ratings()));
• Textmasterformat bearbeiten • Zweite Ebene Mastertextformat bearbeiten desserts =
signal<Dessert[]>([]); ratings = signal<DessertIdToRatingMap>({}); ratedDesserts = computed(() => this.toRated(this.desserts(), this.ratings())); 10 Building Your Reactive Graph originalName = signal(''); englishName = signal(''); Load Desserts
• Textmasterformat bearbeiten • Zweite Ebene Mastertextformat bearbeiten 11 Resource
API
• Textmasterformat bearbeiten • Zweite Ebene Mastertextformat bearbeiten 12 Resource
API dessertsResource = resource({ params: this.dessertsCriteria, loader: (params) => { return this.#dessertService.findPromise(params.params); } });
• Textmasterformat bearbeiten • Zweite Ebene Mastertextformat bearbeiten 13 Resource
API dessertsResource = resource({ request: this.dessertsCriteria, loader: (params) => { return this.#dessertService.findPromise(params.params); } }); dessertsCriteria = computed(() => ({ originalName: this.originalName(), englishName: this.englishName(), })); desserts = this.dessertsResource.value; ratedDesserts = computed(() => this.toRated(this.desserts, …));
• Textmasterformat bearbeiten • Zweite Ebene Mastertextformat bearbeiten 14 httpResource
dessertsResource = httpResource(() => ({ url: 'http://demo.angulararchitects.io/...', params: { originalName: this.originalName(), englishName: this.englishName(), } })); desserts = this.dessertsResource.value; ratedDesserts = computed(() => this.toRated(this.desserts, …));
• Textmasterformat bearbeiten • Zweite Ebene Mastertextformat bearbeiten 15 DEMO
• Textmasterformat bearbeiten • Zweite Ebene Mastertextformat bearbeiten 16 Reactive
Graph in Our App
• Textmasterformat bearbeiten • Zweite Ebene Mastertextformat bearbeiten 17 canvas
(view child) style levelKey animation levelResource tilesMapResource tilesResource tilesMapProgress render (effect) levelOverview Resource
• Textmasterformat bearbeiten • Zweite Ebene Mastertextformat bearbeiten 20 DEMO
• Textmasterformat bearbeiten • Zweite Ebene Mastertextformat bearbeiten 21 1)
Build a reactive graph 1) Computed: Sync Derivation/ Readonly 2) Linked Signal: Sync Derivation/ Writable 3) Resource API: Async Derivation/ Writable 2) httpResource: fetching data within the graph 3) Service: creating httpResource Conclusion
• Textmasterformat bearbeiten • Zweite Ebene Mastertextformat bearbeiten Marble Run
• Textmasterformat bearbeiten • Zweite Ebene Mastertextformat bearbeiten 23 [Social
Media] Manfred Steyer [web] ANGULARarchitects.io Manfred Steyer @ Manfred Steyer Slides & Examples Remote Company Workshops and Consulting http://angulararchitects.io