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
ド文系人事総務 AsyncPipeのソースコードを読む
Search
zako1560
September 08, 2022
Programming
52
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
ド文系人事総務 AsyncPipeのソースコードを読む
ラクス フロントエンドLT会 - vol.8 で発表させていただいたスライドです。
https://rakus.connpass.com/event/255095/
zako1560
September 08, 2022
Other Decks in Programming
See All in Programming
ActionController meets Protocol Buffers
sorah
0
560
なぜCTOを降りてFDEを選んだのか?〜なぜプロダクト企業がFDEで顧客の現場に踏み込むのか〜
gonta
1
220
SalesForceを内製化!? ~ HR事業を支える顧客管理基盤のインフラを大公開 ~
oku053
0
180
コーディング自動化の次へ。人の介入をゼロにするファクトリーとサポートAIによる実践
timakin
5
3.9k
コードで差別化できない時代の ソフトウェアエンジニアリング / Software Engineering in an Era Where Code Doesn’t Differentiate
kishida
2
180
自サークルのIdPからログアウトできるようになるまで
taiseiue
1
140
Apple Intelligence を用いた個人情報誤送信防止、及びユーザーリクエスト体験の改善について
yukiny
0
350
KiroのSpecで「五目並べ」を作ってみる
satoshi256kbyte
1
380
Unity6 URPによる海底をテーマにしたVJシステムの解説 | Unity Shader 完全に理解した 勉強会
gam0022
0
370
Web Framework Benchmark Battle 2026, Any%
a_matsuda
2
2.5k
UPDATE をやめる — EF Core でマスタをバージョン管理する
panda728
PRO
0
1.2k
APNsからLive Activityを開始する話
yumnumm
0
170
Featured
See All Featured
Exploring the relationship between traditional SERPs and Gen AI search
raygrieselhuber
PRO
4
4.4k
Evolving SEO for Evolving Search Engines
ryanjones
0
330
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1.5k
How to Think Like a Performance Engineer
csswizardry
28
2.9k
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
570
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
570
Darren the Foodie - Storyboard
khoart
PRO
4
4k
技術選定の審美眼(2025年版) / Understanding the Spiral of Technologies 2025 edition
twada
PRO
120
120k
We Analyzed 250 Million AI Search Results: Here's What I Found
joshbly
2
2k
Everyday Curiosity
cassininazir
0
360
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
38
3.1k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
6.1k
Transcript
ド文系人事総務 AsyncPipeのソースコードを読む 2022/09/08 フロントエンドLT会 - vol.8
自己紹介 ざこ @zako1560 • 苗字の「こざ◯」から「ざこ」 • 京都の機械メーカーで人事総務 • 水漏れしてるトイレの部品交換したり、 新卒面接したり、人事制度改定したり... •
Angularで社内人事評価アプリ作ってます • 20:30に寝て4:00に起きます 2
本日のテーマ Async Pipe 3
Async Pipe ObservableやPromiseといった非同期データを テンプレートに直接バインドできる機能 4
5
6
コンポーネントが破棄された際に 自動で購読解除してくれる 購読解除(unsbscribe)が必要 →解除し忘れると メモリリーク・バグの原因に 7
🎉🎉 便利やな〜!! 🥳🥳 (長野県出身) 8
🤯 9
10 親コンポーネント 子コンポーネント
11 親コンポーネント 子コンポーネント
なんのnull? 12
AsyncPipe初期値null問題 13
14
15
・・・ 16
・・・ AsyncPipeのtransform()が初めて呼び出された場合 • Observavle(obj)があれば ◦ _subsuribe()でObservavleを購読する ◦ 購読したObservableに値が流れてきたら、 _latestValueを更新する ▪
markForCheck()を呼び出す →再度transform()が呼び出される 17
・・・ 購読したObservableに値が流れてきたら、 _latestValueを更新する・・・ Observableにまだ値が流れてきていなかったら??? 18
・・・ 購読したObservableに値が流れてきたら、 _latestValueを更新する・・・ Observableにまだ値が流れてきていなかったら??? _latestValueの初期値が返る!! 19
・・・ 20
・・・ 21 初期値null問題
どうすれば・・・🥺 22
null安全なディレクティブを通す *ngIf *ngFor 23
*ngIfの内部は、name$ | asyncが返す値 がfalsyなら無視される 24
25 わかりやすい記事の数々・・・ ありがとうございます
・・・ console.log() console.log() 26 おまけ
・・・ console.log() console.log() obj = new BehaviorSubject<>(‘hogehoge’).asObservable() obj = of(‘hogehoge’)
といった購読と同時に値が流れる Observableの場合、 nullは返されない 27 おまけ
ご静聴ありがとうございました!! 28