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
React と 画像
Search
ymrl
March 11, 2016
Programming
0
1.4k
React と 画像
途中で出てくるデモはこちらです
http://ymrl.github.io/lgtm-editor/
ymrl
March 11, 2016
Tweet
Share
More Decks by ymrl
See All by ymrl
freeeのアクセシビリティの現在地 / freee's Current Position on Accessibility
ymrl
4
780
全社でアクセシビリティに取り組む / Company-wide Accessibility Initiatives
ymrl
1
340
デザイナーがTSKaigiでWAI-ARIAの話をしてみて / Speaking as a Designer: WAI-ARIA at TSKaigi
ymrl
0
200
TypeScriptとReactで、WAI-ARIAの属性を正しく利用する / Fixing WAI-ARIA Typing in React with TypeScript
ymrl
0
330
がんばらないアクセシビリティ / Accessibility Without the Struggle
ymrl
0
290
Webサイトのアクセシビリティにどう向き合う? / How Should We Approach Web Accessibility?
ymrl
0
100
いま求められるソフトウェアのアクセシビリティ / Essential Accessibility in Software Today
ymrl
1
1.3k
アクセシビリティを意識したプロダクトづくり / Creating Products with Accessibility in Mind
ymrl
0
23k
「Webアプリケーションアクセシビリティ」著者の会社 (freee, サイボウズ, SmartHR) での取り組みは実際どんな感じ?
ymrl
3
23k
Other Decks in Programming
See All in Programming
Azure SRE Agentで運用は楽になるのか?
kkamegawa
0
2.4k
Reading Rails 1.0 Source Code
okuramasafumi
0
250
CJK and Unicode From a PHP Committer
youkidearitai
PRO
0
110
AI Coding Agentのセキュリティリスク:PRの自己承認とメルカリの対策
s3h
0
230
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
400
ProxyによるWindow間RPC機構の構築
syumai
3
1.2k
AIコーディングAgentとの向き合い方
eycjur
0
280
「手軽で便利」に潜む罠。 Popover API を WCAG 2.2の視点で安全に使うには
taitotnk
0
870
複雑なドメインに挑む.pdf
yukisakai1225
5
1.2k
意外と簡単!?フロントエンドでパスキー認証を実現する WebAuthn
teamlab
PRO
2
770
パッケージ設計の黒魔術/Kyoto.go#63
lufia
3
440
AIと私たちの学習の変化を考える - Claude Codeの学習モードを例に
azukiazusa1
10
4.3k
Featured
See All Featured
Reflections from 52 weeks, 52 projects
jeffersonlam
352
21k
Why Our Code Smells
bkeepers
PRO
339
57k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
61k
Become a Pro
speakerdeck
PRO
29
5.5k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
53
2.9k
Writing Fast Ruby
sferik
628
62k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
What’s in a name? Adding method to the madness
productmarketing
PRO
23
3.7k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
127
53k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.9k
Transcript
Reactͱը૾ Gotanda.js #3 @ymrl
ςΩετ ࣗݾհ ▸ @ymrl (Twitter, GitHub, etc…) ▸ freeeͱ͍͏ձࣾͰڅ༩ܭࢉαʔϏεΛ࡞͍ͬͯ·͢
ςΩετ LGTMize ▸ 1΄Ͳલʹࡶʹ࡞ͬͨChrome֦ு ▸ ը૾ϏσΦΛӈΫϦοΫͯ͠LGTMͬͯจࣈΛࡌͤͯอଘ ▸ ࣾͷԁͳίϛϡχέʔγϣϯʹʢݸਓతʹʣศར
http://bylines.news.yahoo.co.jp/kohyoungki/20151012-00050386/
ςΩετ Canvasཁૉ ▸ ͍ΘΏΔHTML5ͷՖܗͬΆ͍ͭ ▸ 2࣍ݩϏοτϚοϓը૾͕ѻ͑Δ ▸ ศརͳΑ͏Ͱ͚ͬ͜͏໘͍͘͞ ▸ ྑ͘ѱ͘ϏοτϚοϓ
react-canvas
ςΩετ react-canvas ▸ ReactͰը૾͕࡞ΕΔͧʂʂʂ ▸ Textͱ͔Imageͱ͔Layerͱ͔ͬͯը૾࡞ΕΔ ▸ CSSͬΆ͍ObjectΛͯ͠ελΠϧΛௐ ▸ ຊདྷߴͳಈ࡞ͷUIΛ࡞ΔͨΊʹ࡞ΒΕͨͬΆ͍งғؾ
▸ mouse/touchܥΠϕϯτ͍͔࣮ͭ͘͞ΕͯΔ
None
None
DEMO
إೝࣝ
إʹจࣈ͕͔͔ Δͷආ͚͍ͨ
ςΩετ ccv ▸ CݴޠͷϥΠϒϥϦ͚ͩͲJSʹҠ২͞ΕͯΔ ▸ إೝࣝͰ͖Δ ▸ Web Worker͑Δʢͬͯͳ͍ʣ ▸
npmͱ͔ීٴͯ͠ͳ͍ࠒͷϒπͳͷͰదʹམͱ͖ͯͨ͠ ϑΝΠϧΛஔͯ͠͏
http://www.asahi.com/articles/ASHB75GGFHB7UTFK00G.html
http://www.asahi.com/articles/ASHB75GGFHB7UTFK00G.html
None
None
ςΩετ إΛආ͚Δ ▸ ݩͷը૾͔ΒإͷҐஔͰۣܗΛ͍ͬͯͬͨΓͷ͏ͪ Ұ൪͍ॴʹஔ ▸ ReactCanvasͷϊʔυΛ͢ͱനࠇԽ͞Εͯ͠·ͬͨΓ͢Δ ▸ ͍ͬͯ͏͔͜Ε͋Μ·ΓReactؔͳ͍ ▸
ؾܰʹCanvasΛॻ͖ͤΔͷྑ͍
GIF
animated GIF
ςΩετ gif ▸ Canvasཁૉʹॻ͖ग़͢ͱ1ίϚ ▸ toDataURL() Ͱ͖ͳ͍ ▸ ʢαϒϚϦϯಛڐͬͯͲ͏ͳͬͨΜͰ͚ͨͬ͠ʣ
ςΩετ readwrite-gif ▸ EncoderͱDecoder͕ೖͬͯΔ ▸ 1ίϚͣͭImageDataͰಡΈग़ͤͨΓ͢Δ ▸ Encoder gif.jsify ͷ΄͏͕ଟػೳ͔……
▸ ίϚ͝ͱʹ͞Λม͑ͨΓͰ͖ͦ͏
GIF ΛಡΉ
None
None
࠶ੜ
None
શϑϨʔϜඳը ͠ͳ͖Όμϝ
None
ग़ྗ
ςΩετ શϑϨʔϜͷը૾σʔλ͕΄͍͠ ▸ setState()ͰϑϨʔϜΛ1ͭͣͭඳը͍ͯ͘͠ͷ͍͠ ▸ ࠶ඳըͷλΠϛϯά͕Α͘Θ͔Βͳ͍ ▸ ࠶ੜ͠ͳ͕Βඳը݁ՌΛอଘ͚ͯ͠Α͍ͷͰʁ ▸ componentDidUpdate
ͰదʹಥͬࠐΜͰ͍͘
None
None
ͳΜͱ͔ग़ͤΔΑ ͏ʹͳͬͨͧ
ςΩετ ·ͱΊ ▸ animated GIFͷ૬खΛ͢ΔͷͭΒ͍
͝ਗ਼ௌ͋Γ͕ͱ ͏͍͟͝·ͨ͠