Submit Search
Upload
WebComponentsとPolymerを使ってみた
•
0 likes
•
1,329 views
Nakazawa Yuichi
Follow
GEEKLAB.NAGANOのイベント「HTML5時代のフロントエンド開発入門」でLTした内容です。
Read less
Read more
Software
Report
Share
Report
Share
1 of 27
Download now
Download to read offline
Recommended
HTML5 開発環境の紹介
HTML5 開発環境の紹介
tomo_masakura
HTML5 アプリ開発
HTML5 アプリ開発
tomo_masakura
今流行りのウェブアプリ開発環境Yeoman
今流行りのウェブアプリ開発環境Yeoman
tomo_masakura
JJUG CCC 2011 Fall / Web test automation with Geb and Spock
JJUG CCC 2011 Fall / Web test automation with Geb and Spock
Nobuhiro Sue
View customize pluginを使いこなす
View customize pluginを使いこなす
onozaty
What makes Geb groovy?
What makes Geb groovy?
Youtarou TAKAHASHI
Web Platform -- Moving Forward!
Web Platform -- Moving Forward!
Masataka Yakura
Introduction to Favmemo for Immature Engineers
Introduction to Favmemo for Immature Engineers
Takeshi Arabiki
Recommended
HTML5 開発環境の紹介
HTML5 開発環境の紹介
tomo_masakura
HTML5 アプリ開発
HTML5 アプリ開発
tomo_masakura
今流行りのウェブアプリ開発環境Yeoman
今流行りのウェブアプリ開発環境Yeoman
tomo_masakura
JJUG CCC 2011 Fall / Web test automation with Geb and Spock
JJUG CCC 2011 Fall / Web test automation with Geb and Spock
Nobuhiro Sue
View customize pluginを使いこなす
View customize pluginを使いこなす
onozaty
What makes Geb groovy?
What makes Geb groovy?
Youtarou TAKAHASHI
Web Platform -- Moving Forward!
Web Platform -- Moving Forward!
Masataka Yakura
Introduction to Favmemo for Immature Engineers
Introduction to Favmemo for Immature Engineers
Takeshi Arabiki
jQuery Performance Tips – jQueryにおける高速化 -
jQuery Performance Tips – jQueryにおける高速化 -
Hayato Mizuno
HTML5 & The Web Platform
HTML5 & The Web Platform
Masataka Yakura
Redmineカスタムフィールド表示改善
Redmineカスタムフィールド表示改善
Yuuki Nara
「その他」のUI Framework 3選
「その他」のUI Framework 3選
Shumpei Shiraishi
Webアプリのシナリオテスト自動化を運用に乗せるまでの10のステップ
Webアプリのシナリオテスト自動化を運用に乗せるまでの10のステップ
Naoki Iwami
DjangoでさくっとWeb アプリケーション開発をする話
DjangoでさくっとWeb アプリケーション開発をする話
Nakazawa Yuichi
Knockout を用いた Firefox OS アプリケーションの開発
Knockout を用いた Firefox OS アプリケーションの開発
Kentaro Iizuka
HTML5開発最前線
HTML5開発最前線
yoshikawa_t
HTML5, きちんと。
HTML5, きちんと。
Masataka Yakura
HTML5 入門
HTML5 入門
NOAN
情報編集 (web) 第2回:HTML入門
情報編集 (web) 第2回:HTML入門
Atsushi Tadokoro
素敵なjavascript ~google chrome編~
素敵なjavascript ~google chrome編~
ngi group.
【Camphor ×サイボウズ】selenium勉強会
【Camphor ×サイボウズ】selenium勉強会
Yuki Okada
Polymerで作る次世代ウェブサイト
Polymerで作る次世代ウェブサイト
Eiji Kitamura
React を導入したフロントエンド開発
React を導入したフロントエンド開発
daisuke-a-matsui
Web Components
Web Components
Wataru Taguchi
2012年8月10日 勉強会
2012年8月10日 勉強会
Rin Yano
Chromeデベロッパーツール
Chromeデベロッパーツール
Keiichi Kobayashi
初心者向けJavaScript/HTML5ゲームプログラミング
初心者向けJavaScript/HTML5ゲームプログラミング
Kazuki Miyanishi
いちばん簡単なconcrete5テーマ
いちばん簡単なconcrete5テーマ
Hideki MACHIDA
20150729 polymer超入門
20150729 polymer超入門
Kazuyoshi Goto
Chrome DevTools.next
Chrome DevTools.next
yoshikawa_t
More Related Content
What's hot
jQuery Performance Tips – jQueryにおける高速化 -
jQuery Performance Tips – jQueryにおける高速化 -
Hayato Mizuno
HTML5 & The Web Platform
HTML5 & The Web Platform
Masataka Yakura
Redmineカスタムフィールド表示改善
Redmineカスタムフィールド表示改善
Yuuki Nara
「その他」のUI Framework 3選
「その他」のUI Framework 3選
Shumpei Shiraishi
Webアプリのシナリオテスト自動化を運用に乗せるまでの10のステップ
Webアプリのシナリオテスト自動化を運用に乗せるまでの10のステップ
Naoki Iwami
DjangoでさくっとWeb アプリケーション開発をする話
DjangoでさくっとWeb アプリケーション開発をする話
Nakazawa Yuichi
Knockout を用いた Firefox OS アプリケーションの開発
Knockout を用いた Firefox OS アプリケーションの開発
Kentaro Iizuka
HTML5開発最前線
HTML5開発最前線
yoshikawa_t
HTML5, きちんと。
HTML5, きちんと。
Masataka Yakura
HTML5 入門
HTML5 入門
NOAN
情報編集 (web) 第2回:HTML入門
情報編集 (web) 第2回:HTML入門
Atsushi Tadokoro
素敵なjavascript ~google chrome編~
素敵なjavascript ~google chrome編~
ngi group.
【Camphor ×サイボウズ】selenium勉強会
【Camphor ×サイボウズ】selenium勉強会
Yuki Okada
Polymerで作る次世代ウェブサイト
Polymerで作る次世代ウェブサイト
Eiji Kitamura
React を導入したフロントエンド開発
React を導入したフロントエンド開発
daisuke-a-matsui
Web Components
Web Components
Wataru Taguchi
2012年8月10日 勉強会
2012年8月10日 勉強会
Rin Yano
Chromeデベロッパーツール
Chromeデベロッパーツール
Keiichi Kobayashi
初心者向けJavaScript/HTML5ゲームプログラミング
初心者向けJavaScript/HTML5ゲームプログラミング
Kazuki Miyanishi
いちばん簡単なconcrete5テーマ
いちばん簡単なconcrete5テーマ
Hideki MACHIDA
What's hot
(20)
jQuery Performance Tips – jQueryにおける高速化 -
jQuery Performance Tips – jQueryにおける高速化 -
HTML5 & The Web Platform
HTML5 & The Web Platform
Redmineカスタムフィールド表示改善
Redmineカスタムフィールド表示改善
「その他」のUI Framework 3選
「その他」のUI Framework 3選
Webアプリのシナリオテスト自動化を運用に乗せるまでの10のステップ
Webアプリのシナリオテスト自動化を運用に乗せるまでの10のステップ
DjangoでさくっとWeb アプリケーション開発をする話
DjangoでさくっとWeb アプリケーション開発をする話
Knockout を用いた Firefox OS アプリケーションの開発
Knockout を用いた Firefox OS アプリケーションの開発
HTML5開発最前線
HTML5開発最前線
HTML5, きちんと。
HTML5, きちんと。
HTML5 入門
HTML5 入門
情報編集 (web) 第2回:HTML入門
情報編集 (web) 第2回:HTML入門
素敵なjavascript ~google chrome編~
素敵なjavascript ~google chrome編~
【Camphor ×サイボウズ】selenium勉強会
【Camphor ×サイボウズ】selenium勉強会
Polymerで作る次世代ウェブサイト
Polymerで作る次世代ウェブサイト
React を導入したフロントエンド開発
React を導入したフロントエンド開発
Web Components
Web Components
2012年8月10日 勉強会
2012年8月10日 勉強会
Chromeデベロッパーツール
Chromeデベロッパーツール
初心者向けJavaScript/HTML5ゲームプログラミング
初心者向けJavaScript/HTML5ゲームプログラミング
いちばん簡単なconcrete5テーマ
いちばん簡単なconcrete5テーマ
Similar to WebComponentsとPolymerを使ってみた
20150729 polymer超入門
20150729 polymer超入門
Kazuyoshi Goto
Chrome DevTools.next
Chrome DevTools.next
yoshikawa_t
HTML5最新動向
HTML5最新動向
Shumpei Shiraishi
Java Script4
Java Script4
Kiminari Homma
Angular#Kanazawa
Angular#Kanazawa
Kenichi Kanai
Polymerやってみた
Polymerやってみた
Yosuke Onoue
Firefoxosハンズオン
Firefoxosハンズオン
Kazutoshi Kashimoto
Pythonで始めるtoC向けWebサービス入門
Pythonで始めるtoC向けWebサービス入門
創史 花村
Css nite(2010.09.23)
Css nite(2010.09.23)
Yoshiki Ushida
Pro aspnetmvc3framework chap15
Pro aspnetmvc3framework chap15
Hideki Hashizume
jQuery Mobile
jQuery Mobile
yoshikawa_t
GDG Women DevfestW
GDG Women DevfestW
Tomoko Sato
How to django at first
How to django at first
Maito Kuwahara
アプリコンテスト
アプリコンテスト
Tomonori Yamada
マークアップ講座 01b HTML
マークアップ講座 01b HTML
eiji sekiya
5分でわかる!ownCloudアドオンの作り方
5分でわかる!ownCloudアドオンの作り方
Yuki Takahashi
リモートデバッグツール Weinerをつかってみた
リモートデバッグツール Weinerをつかってみた
Masakazu Muraoka
Client Side Cache
Client Side Cache
Toru Yamaguchi
QML を用いた YouTube クライアントの作成 - 関東 Qt 勉強会
QML を用いた YouTube クライアントの作成 - 関東 Qt 勉強会
Jumpei Ogawa
Angular の紹介
Angular の紹介
Neo Xrea
Similar to WebComponentsとPolymerを使ってみた
(20)
20150729 polymer超入門
20150729 polymer超入門
Chrome DevTools.next
Chrome DevTools.next
HTML5最新動向
HTML5最新動向
Java Script4
Java Script4
Angular#Kanazawa
Angular#Kanazawa
Polymerやってみた
Polymerやってみた
Firefoxosハンズオン
Firefoxosハンズオン
Pythonで始めるtoC向けWebサービス入門
Pythonで始めるtoC向けWebサービス入門
Css nite(2010.09.23)
Css nite(2010.09.23)
Pro aspnetmvc3framework chap15
Pro aspnetmvc3framework chap15
jQuery Mobile
jQuery Mobile
GDG Women DevfestW
GDG Women DevfestW
How to django at first
How to django at first
アプリコンテスト
アプリコンテスト
マークアップ講座 01b HTML
マークアップ講座 01b HTML
5分でわかる!ownCloudアドオンの作り方
5分でわかる!ownCloudアドオンの作り方
リモートデバッグツール Weinerをつかってみた
リモートデバッグツール Weinerをつかってみた
Client Side Cache
Client Side Cache
QML を用いた YouTube クライアントの作成 - 関東 Qt 勉強会
QML を用いた YouTube クライアントの作成 - 関東 Qt 勉強会
Angular の紹介
Angular の紹介
WebComponentsとPolymerを使ってみた
1.
WebComponentsと Polymerを使ってみた 中澤
祐一 @y_nakazawa1220
2.
自己紹介 • Python
+ Djangoでスマホアプリのバックエンド 開発 • ぎーらぼ管理人 • フロントが苦手(汗) • イングレスやりましょう!
3.
WebComponentsと Polymer
4.
Google I/O 2014
報告会
5.
これヤバイんじゃね!
6.
WebComponents • 自分で好きなタグが作れる
• UIのコンポーネント化をして再利用できる • なにより便利そう(楽できそう・・)
7.
「購入ボタン」を同一サイト で使い回したい •
外観 HTML/CSSで書いて • ボタンクリック後の操作 をjsで書いて • 冗長なコードを書くことになる
8.
解決!!
9.
仕様 1. HTML
Template 2. Shadow DOM 3. Custom Elements 4. HTML imports
10.
それぞれの絡み 1. HTML
Template > コンポーネント化する処理 2. Shadow DOM > 1.のカプセル化 3. Custom Elements > 1.を使用する仕組み (タグの定義) 4. HTML imports > 1.を呼び出す仕組み
11.
youtubeタグ を作ってみた (写経してみた・・)
12.
HTML template x-youtube.htmlのようなTemplate用のHTMLファイルを作る
<template id="x-youtube-template"> <style type="text/css" media="screen"> iframe { border: 0; } </style> <iframe width="" height="" src="http://www.youtube.com/embed/" frameborder="0" allowfullscreen></iframe> </template> <script type="text/javascript" src=“js/x-youtube.js"></script>
13.
Shadow DOM styleの隠蔽化
<template id="x-youtube-template"> <style type="text/css" media="screen"> iframe { border: 0; } </style> <iframe width="" height="" src="http://www.youtube.com/embed/" frameborder="0" allowfullscreen></iframe> </template> <script type="text/javascript" src=“js/x-youtube.js"></script>
14.
Custom Elements //
x-youtube タグを作る var XYoutubeProtoType = Object.create(HTMLElement.prototype, { createdCallback: { value: function() {} } } # registerElement()でCustom Elementを登録する var XYoutube = document.registerElement('x-youtube', {prototype: XYoutubeProtoType});
15.
HTML imports <!DOCTYPE
html> <html lang="ja"> <head> <link rel="import" href="/x-youtube.html"> </head> <body></body> ! <x-youtube video-id="XXXXXXXX"></x-youtube> <x-youtube video-id="YYYYYYYY"></x-youtube> ! </html>
16.
こんな感じw
17.
注意点 • Chrome
か Chrome Canaryで • chrome://flagsにアクセスして、「試験運用版の ウェブ プラットフォームの機能を有効にする。」 を有効にする
18.
Polymer
19.
ああ、これか!!
20.
What is a
Polymer? • Web Conponentsを包んだライブラリ (Polymer.js) • Polyfillがブラウザの未サポートを補ってくれる • 既にCustom Elementsが用意されている • Templateが作れるDesignerツールがある
21.
Custom Elements I/O
http://customelements.io
22.
Polymer Designer http://www.polymer-project.org/tools/designer/
23.
こんなコードを吐いてくれる <link rel="import"
href="../core-icon-button/core-icon-button.html"> <link rel="import" href="../core-toolbar/core-toolbar.html"> <polymer-element name="my-element"> <template> <style> :host { position: absolute; width: 100%; height: 100%; box-sizing: border-box; } ・・・ </style> <core-toolbar id="core_toolbar"> <core-icon-button id="core_icon_button" icon="menu"></core-icon-button> <div id="div" flex>Toolbar</div> </core-toolbar> </template> <script> Polymer('my-element', { }); </script> !
24.
感想・・
25.
自分のフロント嫌い (もとい苦手)は直るのか!?
26.
• 使えるコンポーネントが増えてくれば生産性上がり そう
• 自分で作る分には、ちゃんと基本を抑えてないとやっ ぱ厳しい • まだリファレンス捨てちゃいけないw。
27.
ご清聴ありがとう ございました!
Download now