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
WebComponents or shadow side of the Doom
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Grzegorz Wilczyński
November 17, 2014
Programming
52
0
Share
WebComponents or shadow side of the Doom
WebComponents or shadow side of the Doom
Grzegorz Wilczyński
November 17, 2014
More Decks by Grzegorz Wilczyński
See All by Grzegorz Wilczyński
REWRITE'EM ALL
gwilczynski
2
480
Chain made out of coins - smart introduction to blockchain
gwilczynski
0
110
clean code
gwilczynski
0
140
git scm in one hour
gwilczynski
0
120
Single responsibility principle
gwilczynski
2
200
Productivity for Programmers
gwilczynski
3
210
Git branching model for TAPTeam
gwilczynski
0
930
JS design patterns
gwilczynski
6
370
Other Decks in Programming
See All in Programming
TiDBのアーキテクチャから学ぶ分散システム入門 〜MySQL互換のNewSQLは何を解決するのか〜 / tidb-architecture-study
dznbk
1
190
Lightning-Fast Method Calls with Ruby 4.1 ZJIT / RubyKaigi 2026
k0kubun
3
1.2k
属人化しないコード品質の作り方_2026.04.07.pdf
muraaano
0
230
mruby on C#: From VM Implementation to Game Scripting (RubyKaigi 2026)
hadashia
2
620
ドメインイベントでビジネスロジックを解きほぐす #phpcon_odawara
kajitack
3
800
The Monolith Strikes Back: Why AI Agents ❤️ Rails Monoliths
serradura
0
350
エラー処理の温故知新 / history of error handling technic
ryotanakaya
5
1.3k
書籍「ユーザーストーリーマッピング」が私のバイブル
asumikam
4
420
Angular Signal Forms
debug_mode
0
120
AIベース静的検査器の偽陽性率を抑える工夫3選
orgachem
PRO
4
360
YJITとZJITにはイカなる違いがあるのか?
nakiym
0
250
Oxlintとeslint-plugin-react-hooks 明日から始められそう?
t6adev
0
280
Featured
See All Featured
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
330
AI Search: Implications for SEO and How to Move Forward - #ShenzhenSEOConference
aleyda
1
1.2k
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2.2k
Designing Experiences People Love
moore
143
24k
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
65
55k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.4k
The Illustrated Children's Guide to Kubernetes
chrisshort
51
52k
Learning to Love Humans: Emotional Interface Design
aarron
275
41k
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
490
The Cult of Friendly URLs
andyhume
79
6.8k
The Spectacular Lies of Maps
axbom
PRO
1
710
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
2.6k
Transcript
WebComponents or shadow side of the Doom Grzegorz Wilczyński @wilq_
Wrocław, 17.11.2014
But Why?
Four Horsemen Custom Elements HTML Imports Templates Shadow DOM
Custom Elements <polymer-element name="post-list" extends="post-list-base" attributes="type posts"> <template> </template> </polymer-element>
Custom Elements <post-list> post list </post-list> ! <post-list posts="{foo: 'bar'}"
type="pretty"> post list with attributes </post-list>
Templates <template repeat="{{post in posts}}"> <post-card> <img src="{{post.avatar}}"> <h2>{{post.username}}</h2> <p>{{post.text}}</p>
</post-card> </template>
Templates <template> <div class="card-header" layout horizontal center> <content select="img"></content> <content
select="h2"></content> </div> <content></content> <template>
Shadow DOM
None
Shadow DOM Shadow DOM gives us DOM tree encapsulation and
style boundaries, but please don't: ! :host([data-post-status="warning"]) /deep/ #postState /deep/ #submitButton /deep/ core- icon { color: #259b24; }
HTML Imports <link rel="import" href="foo/bar.html">
Are We Componentized Yet? X-Tags by Mozilla Polymer by Google
Bosonic
Warehouse Search Bower Packages Component Kitchen Custom Elements
Sources http://webcomponents.org https://www.polymer-project.org http://pascalprecht.github.io/dont- stop-thinking-about-tomorrow/ http://jonrimmer.github.io/are-we- componentized-yet/
Thank YOU