Uma visão crítica sobre o hype da vez. Esta palestra tem como norte tirar o ruído e fundamentar (inclusive com exemplos) o que realmente importa neste papo de componentes.
Sabemos que não há nenhuma semântica a ser seguida quando atribuímos classes a um elemento http://nicolasgallagher.com/about-html- semantics-front-end-architecture
var t = document.querySelector('template') t.content.querySelector('[data-name]') .textContent = userData document.body.appendChild( document.importNode(t.content, true)); HTML JAVASCRIPT
• Fácil de visualizar a estrutura • Designers sentem-se confortáveis em fazer alterações • Previne Cross-site scripting http://facebook.github.io/react/docs/jsx-in-depth.html JSX JavaScript XML syntax
I’m definitely not a fan of making your widget out of a . It is reliable but it’s hostile to accessibility, indexing, composition, and resolution independence Dominic Cooney Google
Hiding Native HTML5 Video Controls in Full-Screen Mode Chris Coyier http://css-tricks.com/custom- controls-in-html5-video-full-screen Shadow DOM CSS Cheat Sheet Rob Dodson http://robdodson.me/blog/2014/04/10/ shadow-dom-css-cheat-sheet
Maintainable JavaScript: Don’t modify objects you don’t own Nicholas C. Zakas http://www.nczonline.net/blog/2010/03/02/maintainable- javascript-dont-modify-objects-you-down-own
Not blue content <br/>var root = document.querySelector('.widget')<br/>.createShadowRoot()<br/>root.innerHTML = '<style>' +<br/>'p { color: blue }</style>'<br/> As regras definidas no Shadow DOM não surtem efeito na página HTML
<br/>var root = document.querySelector('.widget')<br/>.createShadowRoot()<br/>root.innerHTML = '<p>Content</p>'<br/> E as regras de CSS definidas na página não se aplicam ao Shadow DOM HTML
Não esqueça que conflitos de CSS podem ser evitados com a adoção de um sistema de escrita http://tableless.com.br/oocss-smacss-bem-dry- css-afinal-como-escrever-css
.sign-up::part(login-label) { color: orange; } http://robdodson.me/blog/2013/08/29/shadow- dom-styles-cont-dot Shadow DOM permite definir elementos parts passíveis de estilização HTML