29
Polymer

Polymer - все, що Ви повинні знати про Polymer

Embed Size (px)

Citation preview

Page 1: Polymer - все, що Ви повинні знати про Polymer

Polymer

Page 2: Polymer - все, що Ви повинні знати про Polymer

Для чого?

Page 3: Polymer - все, що Ви повинні знати про Polymer

WebComponents.org

Page 4: Polymer - все, що Ви повинні знати про Polymer

WebComponents

Page 5: Polymer - все, що Ви повинні знати про Polymer

WebComponents

• Templates

Page 6: Polymer - все, що Ви повинні знати про Polymer

WebComponents

• Templates

• Shadow DOM

Page 7: Polymer - все, що Ви повинні знати про Polymer

WebComponents

• Templates

• Shadow DOM

• Custom Elements

Page 8: Polymer - все, що Ви повинні знати про Polymer

WebComponents

• Templates

• Shadow DOM

• Custom Elements

• Imports

Page 9: Polymer - все, що Ви повинні знати про Polymer

HTML Templates

Page 10: Polymer - все, що Ви повинні знати про Polymer

<template id="mytemplate"> <img src="" alt=""/> <div class="content"></div> </template>

Page 11: Polymer - все, що Ви повинні знати про Polymer

Shadow DOM

Page 12: Polymer - все, що Ви повинні знати про Polymer
Page 13: Polymer - все, що Ви повинні знати про Polymer
Page 14: Polymer - все, що Ви повинні знати про Polymer

<div id="host"> <h1>My Title</h1> <h2>My Subtitle</h2> <div> ...other content...</div> </div> <script> var host = document.querySelector('#host'); var shadow = host.createShadowRoot(); shadow.innerHTML = '<h2>Yo, you got replaced!</h2>' + '<div>by my awesome content</div>'; </script>

Page 15: Polymer - все, що Ви повинні знати про Polymer
Page 16: Polymer - все, що Ви повинні знати про Polymer

Custom Elements

Page 17: Polymer - все, що Ви повинні знати про Polymer

<user-list></user-list>

Page 18: Polymer - все, що Ви повинні знати про Polymer

HTML Imports

Page 19: Polymer - все, що Ви повинні знати про Polymer

<!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8"> <link rel="import" href="demo.html"> </head> <body> <user-list></user-list> </body> </html>

Page 20: Polymer - все, що Ви повинні знати про Polymer

Рівні в Polymer

• Elements

• Polymer

• WebComponents

• Native

Page 21: Polymer - все, що Ви повинні знати про Polymer

Два рівні роботи

• Використовувати готові рішення

• Створювати свої елементи

Page 22: Polymer - все, що Ви повинні знати про Polymer

Core Elements

Page 23: Polymer - все, що Ви повинні знати про Polymer

Paper Elements

Page 24: Polymer - все, що Ви повинні знати про Polymer
Page 25: Polymer - все, що Ви повинні знати про Polymer

<!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8"> <title></title> <script src="bower_components/webcomponentsjs/webcomponents.min.js"></script> <link rel="import" href="bower_components/polymer/polymer.html"> <link rel="import" href="elements/demo-element/demo-element.html"> </head> <body unresolved> <demo-element></demo-element> </body> </html>

Page 26: Polymer - все, що Ви повинні знати про Polymer

<link rel="import" href="../../bower_components/polymer/polymer.html"> <polymer-element name="demo-element"> <template> <link rel="stylesheet" href="style.css"> <h1>Hello, {{name}}!</h1> <input type="text" value="{{ name }}"/> <button on-click="{{buttonClick}}">I am button</button> </template> <script> Polymer({ name: 'world', buttonClick: function(){ this.name = "ALL" } }); </script> </polymer-element>

demo-element.html

Page 27: Polymer - все, що Ви повинні знати про Polymer

<core-header-panel> <core-toolbar> <paper-tabs id="tabs" selected="all" self-end> <paper-tab name="all">All</paper-tab> <paper-tab name="favorites">Favorites</paper-tab> </paper-tabs> </core-toolbar> <div class="container" layout vertical center> <post-list show="all"></post-list> </div> </core-header-panel>

Page 28: Polymer - все, що Ви повинні знати про Polymer

Переваги Polymer

• Data binding

• Elements

• Core Elements

• Paper Elements

Page 29: Polymer - все, що Ви повинні знати про Polymer

Дякую за увагу!