SlideShare une entreprise Scribd logo
1  sur  36
Télécharger pour lire hors ligne
gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう!
東区フロントエンド勉強会 2016年 第2回
excode Inc. Toshimichi Suekane1
excode Inc. Toshimichi Suekane2
はじめに
gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう!
http://slim-lang.com/
excode Inc. Toshimichi Suekane3
はじめに
gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう!
Slim is a template language whose goal is reduce the syntax
to the essential parts without becoming cryptic.
構文を減らすことを目的としたテンプレート言語
excode Inc. Toshimichi Suekane4
はじめに
gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう!
Slim HTML
excode Inc. Toshimichi Suekane5
はじめに
gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう!
Slim HTML
1. 閉じタグ不要
2. <>不要
3. 変数が使える
4. 関数や計算式が使える
5. インデントでネスト(入れ子)管理できる
excode Inc. Toshimichi Suekane
今日やること
gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう!
6
1. gulp + Slim のデモ
2. gulp + Slim の導入
3. gulp + Slim のハンズオン
4. おわりに
はじめに
excode Inc. Toshimichi Suekane
1. gulp + Slim のデモ
gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう!
7
1. Slim から HTML を出力
2. 変数を使ってみる
3. for ループを使って連番を振ってみる
4. 配列に格納したテキストで一気にHTMLを書き出してみる
excode Inc. Toshimichi Suekane
Demo
gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう!
8
1. gulp + Slim のデモ
excode Inc. Toshimichi Suekane
2. gulp + Slim の導入
gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう!
9
1. Slim の準備
2. gulp の準備
3. lesson.slim を作成
4. gulp を実行
5. gulp で監視
excode Inc. Toshimichi Suekane
1. Slim の準備
gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう!
10
2. gulp + Slim の導入
Slim をインストールするコマンド
excode Inc. Toshimichi Suekane
gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう!
11
2. gulp + Slim の導入
Slim のバージョンを確認
1. Slim の準備
excode Inc. Toshimichi Suekane
gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう!
12
2. gulp + Slim の導入
バージョンが表示されればOK
1. Slim の準備
excode Inc. Toshimichi Suekane
gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう!
13
2. gulp + Slim の導入
1. Slim の準備(SSL エラーが出る時)
rubygems.orgの URL を http に変更する
rubygems.orgの URL を元に戻す
ERROR: Could not find a valid gem 'sass' (>= 0), heres why:
Unable to download data from https://rubygems.org…
rubygems.orgの URL を http に変更して、再度インストールを試みます
excode Inc. Toshimichi Suekane
gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう!
14
2. gulp + Slim の導入
これで Slim の準備は終わりです
1. Slim の準備
excode Inc. Toshimichi Suekane
gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう!
15
2. gulp + Slim の導入
2. gulp の準備
excode Inc. Toshimichi Suekane
gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう!
16
2. gulp + Slim の導入
一から作ると時間が足りないので、予め用意してきました
https://goo.gl/QNfMaU
2. gulp の準備
excode Inc. Toshimichi Suekane
gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう!
17
2. gulp + Slim の導入
ZIPファイルをダウンロードし、デスクトップ上に解凍してください
2. gulp の準備
excode Inc. Toshimichi Suekane
gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう!
18
2. gulp + Slim の導入
解凍したフォルダをデスクトップに保存
2. gulp の準備
excode Inc. Toshimichi Suekane
gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう!
19
2. gulp + Slim の導入
ターミナルに cd とタイプして、先ほどのディレクトリをドラッグします
2. gulp の準備
excode Inc. Toshimichi Suekane
gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう!
20
2. gulp + Slim の導入
2. gulp の準備
ターミナルに cd とタイプして、先ほどのディレクトリをドラッグします
excode Inc. Toshimichi Suekane
gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう!
21
2. gulp + Slim の導入
ディレクトリのパスが表示されますので、エンターキーを押してください。ターミナル上でそのディレクトリ内に移動します
2. gulp の準備
excode Inc. Toshimichi Suekane
gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう!
22
2. gulp + Slim の導入
gulp の動作に必要なファイルをインストールします。
2. gulp の準備
excode Inc. Toshimichi Suekane
2. gulp の準備
gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう!
23
2. gulp + Slim の導入
gulp + Slim の動作に必要なファイルをインストールします。
excode Inc. Toshimichi Suekane
2. gulp の準備
gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう!
24
2. gulp + Slim の導入
これで gulp の準備は終わりです
excode Inc. Toshimichi Suekane
gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう!
25
3. gulp + Slim のハンズオン
1. Slim から HTML を出力
2. Slim の書き方
3. 変数を使ってみる
4. for ループを使って連番を振ってみる
5. 配列に格納したテキストで一気にHTMLを書き出してみる
6. 共通部分を外部ファイル化する
excode Inc. Toshimichi Suekane
1. Slim から HTML を出力
gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう!
26
3. gulp + Slim のハンズオン
gulpfile.js のディレクトリ内で gulp slim を実行してみます
excode Inc. Toshimichi Suekane
1. Slim から HTML を出力
gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう!
27
3. gulp + Slim のハンズオン
gulpfile.js のディレクトリ内で gulp watch で監視をしてみます(デモでは gulp で監視に入るようにしています)
excode Inc. Toshimichi Suekane
gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう!
28
2. Slim の書き方
インデントを使ってタグの階層を制御します
3. gulp + Slim のハンズオン
excode Inc. Toshimichi Suekane
gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう!
29
2. Slim の書き方
テキストを書くときは3通りあります
3. gulp + Slim のハンズオン
excode Inc. Toshimichi Suekane
gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう!
30
2. Slim の書き方
要素名の後に#でID、.でクラスが付与されます #や.から書き出した場合はDIVタグとなります
3. gulp + Slim のハンズオン
excode Inc. Toshimichi Suekane
gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう!
31
2. Slim の書き方
タグを直接書き入れることもできます
3. gulp + Slim のハンズオン
excode Inc. Toshimichi Suekane
gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう!
32
2. Slim の書き方
スラッシュで始めた行はコメントアウトされます
3. gulp + Slim のハンズオン
excode Inc. Toshimichi Suekane
gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう!
33
2. Slim の書き方
変数を指定したい場合は - から書き始めます 変数を文字列として書き出す際は#{…}で囲みます
3. gulp + Slim のハンズオン
excode Inc. Toshimichi Suekane
gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう!
34
3. gulp + Slim のハンズオン
実際に編集
excode Inc. Toshimichi Suekane
gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう!
35
4. おわりに
Slim のいいところ
• インデントを操作するだけでタグの階層を操作できる
• 閉じタグを気にしなくていい
Slim の使いどころ
• 複数ページをがっつり仕上げたい時
• 共同作業でありつつも属人的に作業をしたいとき
Slim でなくてもいいところ
• 納品後のメンテナンスまで Slim で済ませる必要はない
• ほんの数行程度なら、HTMLを書いた方が早い
excode Inc. Toshimichi Suekane
gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう!
36
お疲れ様でした

Contenu connexe

Tendances

第9回rest勉強会 ダウンロード・アップロード編
第9回rest勉強会 ダウンロード・アップロード編第9回rest勉強会 ダウンロード・アップロード編
第9回rest勉強会 ダウンロード・アップロード編ksimoji
 
イケてる技術で品質を担保しつつスピード感のある開発を実現する冴えたやり方
イケてる技術で品質を担保しつつスピード感のある開発を実現する冴えたやり方イケてる技術で品質を担保しつつスピード感のある開発を実現する冴えたやり方
イケてる技術で品質を担保しつつスピード感のある開発を実現する冴えたやり方Yuta Matsumura
 
node-gypを使ったネイティブモジュールの作成
node-gypを使ったネイティブモジュールの作成node-gypを使ったネイティブモジュールの作成
node-gypを使ったネイティブモジュールの作成shigeki_ohtsu
 
[JavaScript][gulp.js] 一緒に楽しよう!gulp.jsのあれこれ
[JavaScript][gulp.js] 一緒に楽しよう!gulp.jsのあれこれ[JavaScript][gulp.js] 一緒に楽しよう!gulp.jsのあれこれ
[JavaScript][gulp.js] 一緒に楽しよう!gulp.jsのあれこれYasuhiro Murata
 
Bicep + VS Code で楽々Azure Deploy
Bicep + VS Code で楽々Azure DeployBicep + VS Code で楽々Azure Deploy
Bicep + VS Code で楽々Azure DeployTakekazu Omi
 
フロント開発をがんばるためにGulpとGruntに入門してみた
フロント開発をがんばるためにGulpとGruntに入門してみたフロント開発をがんばるためにGulpとGruntに入門してみた
フロント開発をがんばるためにGulpとGruntに入門してみたShou Takenaka
 
Spring in-summer-gradle-hands on-withanswers
Spring in-summer-gradle-hands on-withanswersSpring in-summer-gradle-hands on-withanswers
Spring in-summer-gradle-hands on-withanswersTakuma Watabiki
 
Jjug 20140430 gradle_advanced
Jjug 20140430 gradle_advancedJjug 20140430 gradle_advanced
Jjug 20140430 gradle_advancedMasatoshi Hayashi
 
Gradleどうでしょう
GradleどうでしょうGradleどうでしょう
GradleどうでしょうTakuma Watabiki
 
OSS Product feat. Gradle
OSS Product feat. GradleOSS Product feat. Gradle
OSS Product feat. GradleYasuharu Nakano
 
Webエンジニアがスタートダッシュをキメるためのローカル開発環境の勘所
Webエンジニアがスタートダッシュをキメるためのローカル開発環境の勘所Webエンジニアがスタートダッシュをキメるためのローカル開発環境の勘所
Webエンジニアがスタートダッシュをキメるためのローカル開発環境の勘所Y Watanabe
 
Ruby on Rails Tutorial Chapter5-7
Ruby on Rails Tutorial Chapter5-7Ruby on Rails Tutorial Chapter5-7
Ruby on Rails Tutorial Chapter5-7Sea Mountain
 
JavaでWebサービスを作り続けるための戦略と戦術 JJUG-CCC-2018-Spring-g1
JavaでWebサービスを作り続けるための戦略と戦術 JJUG-CCC-2018-Spring-g1JavaでWebサービスを作り続けるための戦略と戦術 JJUG-CCC-2018-Spring-g1
JavaでWebサービスを作り続けるための戦略と戦術 JJUG-CCC-2018-Spring-g1Y Watanabe
 
(IDEユーザのための) ClojureのEmacs開発環境について
(IDEユーザのための) ClojureのEmacs開発環境について(IDEユーザのための) ClojureのEmacs開発環境について
(IDEユーザのための) ClojureのEmacs開発環境についてKazuhiro Hara
 
JJUG CCC 20150411 grails3 Spring-boot
JJUG CCC 20150411 grails3 Spring-bootJJUG CCC 20150411 grails3 Spring-boot
JJUG CCC 20150411 grails3 Spring-bootTsuyoshi Yamamoto
 
イベント駆動プログラミングとI/O多重化
イベント駆動プログラミングとI/O多重化イベント駆動プログラミングとI/O多重化
イベント駆動プログラミングとI/O多重化Gosuke Miyashita
 

Tendances (20)

gulp勉強会@IVP
gulp勉強会@IVPgulp勉強会@IVP
gulp勉強会@IVP
 
第9回rest勉強会 ダウンロード・アップロード編
第9回rest勉強会 ダウンロード・アップロード編第9回rest勉強会 ダウンロード・アップロード編
第9回rest勉強会 ダウンロード・アップロード編
 
イケてる技術で品質を担保しつつスピード感のある開発を実現する冴えたやり方
イケてる技術で品質を担保しつつスピード感のある開発を実現する冴えたやり方イケてる技術で品質を担保しつつスピード感のある開発を実現する冴えたやり方
イケてる技術で品質を担保しつつスピード感のある開発を実現する冴えたやり方
 
node-gypを使ったネイティブモジュールの作成
node-gypを使ったネイティブモジュールの作成node-gypを使ったネイティブモジュールの作成
node-gypを使ったネイティブモジュールの作成
 
[JavaScript][gulp.js] 一緒に楽しよう!gulp.jsのあれこれ
[JavaScript][gulp.js] 一緒に楽しよう!gulp.jsのあれこれ[JavaScript][gulp.js] 一緒に楽しよう!gulp.jsのあれこれ
[JavaScript][gulp.js] 一緒に楽しよう!gulp.jsのあれこれ
 
Bicep + VS Code で楽々Azure Deploy
Bicep + VS Code で楽々Azure DeployBicep + VS Code で楽々Azure Deploy
Bicep + VS Code で楽々Azure Deploy
 
フロント開発をがんばるためにGulpとGruntに入門してみた
フロント開発をがんばるためにGulpとGruntに入門してみたフロント開発をがんばるためにGulpとGruntに入門してみた
フロント開発をがんばるためにGulpとGruntに入門してみた
 
Grails 2.0.0.M1の話
Grails 2.0.0.M1の話 Grails 2.0.0.M1の話
Grails 2.0.0.M1の話
 
Spring in-summer-gradle-hands on-withanswers
Spring in-summer-gradle-hands on-withanswersSpring in-summer-gradle-hands on-withanswers
Spring in-summer-gradle-hands on-withanswers
 
Jjug 20140430 gradle_advanced
Jjug 20140430 gradle_advancedJjug 20140430 gradle_advanced
Jjug 20140430 gradle_advanced
 
Gradleどうでしょう
GradleどうでしょうGradleどうでしょう
Gradleどうでしょう
 
Gradle handson
Gradle handsonGradle handson
Gradle handson
 
OSS Product feat. Gradle
OSS Product feat. GradleOSS Product feat. Gradle
OSS Product feat. Gradle
 
Webエンジニアがスタートダッシュをキメるためのローカル開発環境の勘所
Webエンジニアがスタートダッシュをキメるためのローカル開発環境の勘所Webエンジニアがスタートダッシュをキメるためのローカル開発環境の勘所
Webエンジニアがスタートダッシュをキメるためのローカル開発環境の勘所
 
Ruby on Rails Tutorial Chapter5-7
Ruby on Rails Tutorial Chapter5-7Ruby on Rails Tutorial Chapter5-7
Ruby on Rails Tutorial Chapter5-7
 
JavaでWebサービスを作り続けるための戦略と戦術 JJUG-CCC-2018-Spring-g1
JavaでWebサービスを作り続けるための戦略と戦術 JJUG-CCC-2018-Spring-g1JavaでWebサービスを作り続けるための戦略と戦術 JJUG-CCC-2018-Spring-g1
JavaでWebサービスを作り続けるための戦略と戦術 JJUG-CCC-2018-Spring-g1
 
Bot Framework v4 開発 Tips 2018-11
Bot Framework v4  開発 Tips 2018-11Bot Framework v4  開発 Tips 2018-11
Bot Framework v4 開発 Tips 2018-11
 
(IDEユーザのための) ClojureのEmacs開発環境について
(IDEユーザのための) ClojureのEmacs開発環境について(IDEユーザのための) ClojureのEmacs開発環境について
(IDEユーザのための) ClojureのEmacs開発環境について
 
JJUG CCC 20150411 grails3 Spring-boot
JJUG CCC 20150411 grails3 Spring-bootJJUG CCC 20150411 grails3 Spring-boot
JJUG CCC 20150411 grails3 Spring-boot
 
イベント駆動プログラミングとI/O多重化
イベント駆動プログラミングとI/O多重化イベント駆動プログラミングとI/O多重化
イベント駆動プログラミングとI/O多重化
 

Similaire à gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう

cli.go と cli-init で高速にコマンドラインツールを開発する / The command-line tool developed at hi...
cli.go と cli-init で高速にコマンドラインツールを開発する / The command-line tool developed at hi...cli.go と cli-init で高速にコマンドラインツールを開発する / The command-line tool developed at hi...
cli.go と cli-init で高速にコマンドラインツールを開発する / The command-line tool developed at hi...Hidenori Takeshita
 
アトリエ秋葉原 Choregraphe WS#4
アトリエ秋葉原 Choregraphe WS#4アトリエ秋葉原 Choregraphe WS#4
アトリエ秋葉原 Choregraphe WS#4Atelier Akihabara
 
Fluentd1.2 & Fluent Bit
Fluentd1.2 & Fluent BitFluentd1.2 & Fluent Bit
Fluentd1.2 & Fluent BitSeiya Mizuno
 
Intalio Cloud Workshop
Intalio Cloud Workshop Intalio Cloud Workshop
Intalio Cloud Workshop Daisuke Sugai
 
うわ…私のEmacs力、低すぎ...?
うわ…私のEmacs力、低すぎ...?うわ…私のEmacs力、低すぎ...?
うわ…私のEmacs力、低すぎ...?Masahiro Sano
 
【ハンズオン】jQuery+HTML5 APIでスライドショーを作ろう
【ハンズオン】jQuery+HTML5 APIでスライドショーを作ろう【ハンズオン】jQuery+HTML5 APIでスライドショーを作ろう
【ハンズオン】jQuery+HTML5 APIでスライドショーを作ろうMitsuo Kawashima
 
Ruby向け帳票ソリューション「ThinReports」の開発で知るOSSの威力
Ruby向け帳票ソリューション「ThinReports」の開発で知るOSSの威力Ruby向け帳票ソリューション「ThinReports」の開発で知るOSSの威力
Ruby向け帳票ソリューション「ThinReports」の開発で知るOSSの威力ThinReports
 
Al mininum 47redmine-2nd
Al mininum 47redmine-2ndAl mininum 47redmine-2nd
Al mininum 47redmine-2ndmikoto20000
 
AITCシニア技術者勉強会 「今さら聞けないWebサイト開発」 vol2
AITCシニア技術者勉強会 「今さら聞けないWebサイト開発」 vol2AITCシニア技術者勉強会 「今さら聞けないWebサイト開発」 vol2
AITCシニア技術者勉強会 「今さら聞けないWebサイト開発」 vol2近藤 繁延
 
20090704rubyist九州
20090704rubyist九州20090704rubyist九州
20090704rubyist九州koki_h
 
The New Rich Text Editor
The New Rich Text EditorThe New Rich Text Editor
The New Rich Text EditorTaku AMANO
 
誰にでもできるパフォーマンスチューニング
誰にでもできるパフォーマンスチューニング誰にでもできるパフォーマンスチューニング
誰にでもできるパフォーマンスチューニングKiyokazu Kaba
 
HTML5 アプリ開発
HTML5 アプリ開発HTML5 アプリ開発
HTML5 アプリ開発tomo_masakura
 
ゼロからのプログラミングRails講座 Codeanywhere版
ゼロからのプログラミングRails講座 Codeanywhere版ゼロからのプログラミングRails講座 Codeanywhere版
ゼロからのプログラミングRails講座 Codeanywhere版DIVE INTO CODE Corp.
 
FuelPHP活用事例
FuelPHP活用事例FuelPHP活用事例
FuelPHP活用事例Yusuke Naka
 
組み込みLinuxでのGolangのススメ(Go con版)
組み込みLinuxでのGolangのススメ(Go con版)組み込みLinuxでのGolangのススメ(Go con版)
組み込みLinuxでのGolangのススメ(Go con版)Tetsuyuki Kobayashi
 
レンタルサーバで今すぐ始めるWEB開発
レンタルサーバで今すぐ始めるWEB開発レンタルサーバで今すぐ始めるWEB開発
レンタルサーバで今すぐ始めるWEB開発Naoyuki Kataoka
 
[CTO Night & Day 2019] AWS Amplify で Web/Mobile 爆速スケーラブル Serverless 開発 #ctonight
[CTO Night & Day 2019] AWS Amplify で Web/Mobile 爆速スケーラブル Serverless 開発 #ctonight[CTO Night & Day 2019] AWS Amplify で Web/Mobile 爆速スケーラブル Serverless 開発 #ctonight
[CTO Night & Day 2019] AWS Amplify で Web/Mobile 爆速スケーラブル Serverless 開発 #ctonightAmazon Web Services Japan
 

Similaire à gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう (20)

cli.go と cli-init で高速にコマンドラインツールを開発する / The command-line tool developed at hi...
cli.go と cli-init で高速にコマンドラインツールを開発する / The command-line tool developed at hi...cli.go と cli-init で高速にコマンドラインツールを開発する / The command-line tool developed at hi...
cli.go と cli-init で高速にコマンドラインツールを開発する / The command-line tool developed at hi...
 
アトリエ秋葉原 Choregraphe WS#4
アトリエ秋葉原 Choregraphe WS#4アトリエ秋葉原 Choregraphe WS#4
アトリエ秋葉原 Choregraphe WS#4
 
Fluentd1.2 & Fluent Bit
Fluentd1.2 & Fluent BitFluentd1.2 & Fluent Bit
Fluentd1.2 & Fluent Bit
 
Intalio Cloud Workshop
Intalio Cloud Workshop Intalio Cloud Workshop
Intalio Cloud Workshop
 
うわ…私のEmacs力、低すぎ...?
うわ…私のEmacs力、低すぎ...?うわ…私のEmacs力、低すぎ...?
うわ…私のEmacs力、低すぎ...?
 
【ハンズオン】jQuery+HTML5 APIでスライドショーを作ろう
【ハンズオン】jQuery+HTML5 APIでスライドショーを作ろう【ハンズオン】jQuery+HTML5 APIでスライドショーを作ろう
【ハンズオン】jQuery+HTML5 APIでスライドショーを作ろう
 
Ruby向け帳票ソリューション「ThinReports」の開発で知るOSSの威力
Ruby向け帳票ソリューション「ThinReports」の開発で知るOSSの威力Ruby向け帳票ソリューション「ThinReports」の開発で知るOSSの威力
Ruby向け帳票ソリューション「ThinReports」の開発で知るOSSの威力
 
Al mininum 47redmine-2nd
Al mininum 47redmine-2ndAl mininum 47redmine-2nd
Al mininum 47redmine-2nd
 
AITCシニア技術者勉強会 「今さら聞けないWebサイト開発」 vol2
AITCシニア技術者勉強会 「今さら聞けないWebサイト開発」 vol2AITCシニア技術者勉強会 「今さら聞けないWebサイト開発」 vol2
AITCシニア技術者勉強会 「今さら聞けないWebサイト開発」 vol2
 
20090704rubyist九州
20090704rubyist九州20090704rubyist九州
20090704rubyist九州
 
The New Rich Text Editor
The New Rich Text EditorThe New Rich Text Editor
The New Rich Text Editor
 
誰にでもできるパフォーマンスチューニング
誰にでもできるパフォーマンスチューニング誰にでもできるパフォーマンスチューニング
誰にでもできるパフォーマンスチューニング
 
HTML5 アプリ開発
HTML5 アプリ開発HTML5 アプリ開発
HTML5 アプリ開発
 
Gstreamer Basics
Gstreamer BasicsGstreamer Basics
Gstreamer Basics
 
ゼロからのプログラミングRails講座 Codeanywhere版
ゼロからのプログラミングRails講座 Codeanywhere版ゼロからのプログラミングRails講座 Codeanywhere版
ゼロからのプログラミングRails講座 Codeanywhere版
 
FuelPHP活用事例
FuelPHP活用事例FuelPHP活用事例
FuelPHP活用事例
 
組み込みLinuxでのGolangのススメ(Go con版)
組み込みLinuxでのGolangのススメ(Go con版)組み込みLinuxでのGolangのススメ(Go con版)
組み込みLinuxでのGolangのススメ(Go con版)
 
レンタルサーバで今すぐ始めるWEB開発
レンタルサーバで今すぐ始めるWEB開発レンタルサーバで今すぐ始めるWEB開発
レンタルサーバで今すぐ始めるWEB開発
 
Openshift 20191128
Openshift 20191128Openshift 20191128
Openshift 20191128
 
[CTO Night & Day 2019] AWS Amplify で Web/Mobile 爆速スケーラブル Serverless 開発 #ctonight
[CTO Night & Day 2019] AWS Amplify で Web/Mobile 爆速スケーラブル Serverless 開発 #ctonight[CTO Night & Day 2019] AWS Amplify で Web/Mobile 爆速スケーラブル Serverless 開発 #ctonight
[CTO Night & Day 2019] AWS Amplify で Web/Mobile 爆速スケーラブル Serverless 開発 #ctonight
 

gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう

  • 1. gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう! 東区フロントエンド勉強会 2016年 第2回 excode Inc. Toshimichi Suekane1
  • 2. excode Inc. Toshimichi Suekane2 はじめに gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう! http://slim-lang.com/
  • 3. excode Inc. Toshimichi Suekane3 はじめに gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう! Slim is a template language whose goal is reduce the syntax to the essential parts without becoming cryptic. 構文を減らすことを目的としたテンプレート言語
  • 4. excode Inc. Toshimichi Suekane4 はじめに gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう! Slim HTML
  • 5. excode Inc. Toshimichi Suekane5 はじめに gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう! Slim HTML 1. 閉じタグ不要 2. <>不要 3. 変数が使える 4. 関数や計算式が使える 5. インデントでネスト(入れ子)管理できる
  • 6. excode Inc. Toshimichi Suekane 今日やること gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう! 6 1. gulp + Slim のデモ 2. gulp + Slim の導入 3. gulp + Slim のハンズオン 4. おわりに はじめに
  • 7. excode Inc. Toshimichi Suekane 1. gulp + Slim のデモ gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう! 7 1. Slim から HTML を出力 2. 変数を使ってみる 3. for ループを使って連番を振ってみる 4. 配列に格納したテキストで一気にHTMLを書き出してみる
  • 8. excode Inc. Toshimichi Suekane Demo gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう! 8 1. gulp + Slim のデモ
  • 9. excode Inc. Toshimichi Suekane 2. gulp + Slim の導入 gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう! 9 1. Slim の準備 2. gulp の準備 3. lesson.slim を作成 4. gulp を実行 5. gulp で監視
  • 10. excode Inc. Toshimichi Suekane 1. Slim の準備 gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう! 10 2. gulp + Slim の導入 Slim をインストールするコマンド
  • 11. excode Inc. Toshimichi Suekane gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう! 11 2. gulp + Slim の導入 Slim のバージョンを確認 1. Slim の準備
  • 12. excode Inc. Toshimichi Suekane gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう! 12 2. gulp + Slim の導入 バージョンが表示されればOK 1. Slim の準備
  • 13. excode Inc. Toshimichi Suekane gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう! 13 2. gulp + Slim の導入 1. Slim の準備(SSL エラーが出る時) rubygems.orgの URL を http に変更する rubygems.orgの URL を元に戻す ERROR: Could not find a valid gem 'sass' (>= 0), heres why: Unable to download data from https://rubygems.org… rubygems.orgの URL を http に変更して、再度インストールを試みます
  • 14. excode Inc. Toshimichi Suekane gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう! 14 2. gulp + Slim の導入 これで Slim の準備は終わりです 1. Slim の準備
  • 15. excode Inc. Toshimichi Suekane gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう! 15 2. gulp + Slim の導入 2. gulp の準備
  • 16. excode Inc. Toshimichi Suekane gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう! 16 2. gulp + Slim の導入 一から作ると時間が足りないので、予め用意してきました https://goo.gl/QNfMaU 2. gulp の準備
  • 17. excode Inc. Toshimichi Suekane gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう! 17 2. gulp + Slim の導入 ZIPファイルをダウンロードし、デスクトップ上に解凍してください 2. gulp の準備
  • 18. excode Inc. Toshimichi Suekane gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう! 18 2. gulp + Slim の導入 解凍したフォルダをデスクトップに保存 2. gulp の準備
  • 19. excode Inc. Toshimichi Suekane gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう! 19 2. gulp + Slim の導入 ターミナルに cd とタイプして、先ほどのディレクトリをドラッグします 2. gulp の準備
  • 20. excode Inc. Toshimichi Suekane gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう! 20 2. gulp + Slim の導入 2. gulp の準備 ターミナルに cd とタイプして、先ほどのディレクトリをドラッグします
  • 21. excode Inc. Toshimichi Suekane gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう! 21 2. gulp + Slim の導入 ディレクトリのパスが表示されますので、エンターキーを押してください。ターミナル上でそのディレクトリ内に移動します 2. gulp の準備
  • 22. excode Inc. Toshimichi Suekane gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう! 22 2. gulp + Slim の導入 gulp の動作に必要なファイルをインストールします。 2. gulp の準備
  • 23. excode Inc. Toshimichi Suekane 2. gulp の準備 gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう! 23 2. gulp + Slim の導入 gulp + Slim の動作に必要なファイルをインストールします。
  • 24. excode Inc. Toshimichi Suekane 2. gulp の準備 gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう! 24 2. gulp + Slim の導入 これで gulp の準備は終わりです
  • 25. excode Inc. Toshimichi Suekane gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう! 25 3. gulp + Slim のハンズオン 1. Slim から HTML を出力 2. Slim の書き方 3. 変数を使ってみる 4. for ループを使って連番を振ってみる 5. 配列に格納したテキストで一気にHTMLを書き出してみる 6. 共通部分を外部ファイル化する
  • 26. excode Inc. Toshimichi Suekane 1. Slim から HTML を出力 gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう! 26 3. gulp + Slim のハンズオン gulpfile.js のディレクトリ内で gulp slim を実行してみます
  • 27. excode Inc. Toshimichi Suekane 1. Slim から HTML を出力 gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう! 27 3. gulp + Slim のハンズオン gulpfile.js のディレクトリ内で gulp watch で監視をしてみます(デモでは gulp で監視に入るようにしています)
  • 28. excode Inc. Toshimichi Suekane gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう! 28 2. Slim の書き方 インデントを使ってタグの階層を制御します 3. gulp + Slim のハンズオン
  • 29. excode Inc. Toshimichi Suekane gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう! 29 2. Slim の書き方 テキストを書くときは3通りあります 3. gulp + Slim のハンズオン
  • 30. excode Inc. Toshimichi Suekane gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう! 30 2. Slim の書き方 要素名の後に#でID、.でクラスが付与されます #や.から書き出した場合はDIVタグとなります 3. gulp + Slim のハンズオン
  • 31. excode Inc. Toshimichi Suekane gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう! 31 2. Slim の書き方 タグを直接書き入れることもできます 3. gulp + Slim のハンズオン
  • 32. excode Inc. Toshimichi Suekane gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう! 32 2. Slim の書き方 スラッシュで始めた行はコメントアウトされます 3. gulp + Slim のハンズオン
  • 33. excode Inc. Toshimichi Suekane gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう! 33 2. Slim の書き方 変数を指定したい場合は - から書き始めます 変数を文字列として書き出す際は#{…}で囲みます 3. gulp + Slim のハンズオン
  • 34. excode Inc. Toshimichi Suekane gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう! 34 3. gulp + Slim のハンズオン 実際に編集
  • 35. excode Inc. Toshimichi Suekane gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう! 35 4. おわりに Slim のいいところ • インデントを操作するだけでタグの階層を操作できる • 閉じタグを気にしなくていい Slim の使いどころ • 複数ページをがっつり仕上げたい時 • 共同作業でありつつも属人的に作業をしたいとき Slim でなくてもいいところ • 納品後のメンテナンスまで Slim で済ませる必要はない • ほんの数行程度なら、HTMLを書いた方が早い
  • 36. excode Inc. Toshimichi Suekane gulp + Slim テンプレートエンジンで HTML を効率よく書き出そう! 36 お疲れ様でした