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
Grzegorz Wilczyński
November 17, 2014
Programming
50
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
100
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
へんな働き方
yusukebe
6
2.9k
我々はなぜ「層」を分けるのか〜「関心の分離」と「抽象化」で手に入れる変更に強いシンプルな設計〜 #phperkaigi / PHPerKaigi 2026
shogogg
2
780
Rethinking API Platform Filters
vinceamstoutz
0
6.8k
Linux Kernelの1文字のミスで 権限昇格ができた話
rqda
0
2.2k
Nuxt Server Components
wattanx
0
240
それはエンジニアリングの糧である:AI開発のためにAIのOSSを開発する現場より / It serves as fuel for engineering: insights from the field of developing open-source AI for AI development.
nrslib
1
820
LM Linkで(非力な!)ノートPCでローカルLLM
seosoft
0
360
Claude Codeログ基盤の構築
giginet
PRO
7
3.9k
Mastering Event Sourcing: Your Parents Holidayed in Yugoslavia
super_marek
0
140
Everything Claude Code OSS詳細 — 5層構造の中身と導入方法
targe
0
160
Codex CLI でつくる、Issue から merge までの開発フロー
amata1219
0
300
AI活用のコスパを最大化する方法
ochtum
0
370
Featured
See All Featured
Making Projects Easy
brettharned
120
6.6k
Google's AI Overviews - The New Search
badams
0
960
RailsConf 2023
tenderlove
30
1.4k
The Pragmatic Product Professional
lauravandoore
37
7.2k
How to Talk to Developers About Accessibility
jct
2
170
Claude Code のすすめ
schroneko
67
220k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
2.7k
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
110
The Cult of Friendly URLs
andyhume
79
6.8k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.1k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
AI: The stuff that nobody shows you
jnunemaker
PRO
4
510
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