Submit Search
Upload
第3回Rest勉強会 marionette編
•
3 likes
•
1,334 views
K
ksimoji
Follow
2015/3/26に行われたAWS上で構築するRESTfulアプリ勉強会~Web開発ワークショップ~【第3回】で使用した資料です。
Read less
Read more
Software
Report
Share
Report
Share
1 of 61
Download now
Download to read offline
Recommended
春のJs祭り2015 lt
春のJs祭り2015 lt
Yusuke Katsuki
第一回Rest勉強会 ワークショップ
第一回Rest勉強会 ワークショップ
ksimoji
第一回REST勉強会_鈴木商店の開発環境
第一回REST勉強会_鈴木商店の開発環境
tsuchimon
Client-side MVC with Backbone.js
Client-side MVC with Backbone.js
iloveigloo
Backbone.js入門
Backbone.js入門
AdvancedTechNight
5分でわかる?Backbone.js ことはじめ
5分でわかる?Backbone.js ことはじめ
Kohei Kadowaki
いまさら聞けない!?Backbone.js 超入門
いまさら聞けない!?Backbone.js 超入門
Kohei Kadowaki
会社に Github導入した話
会社に Github導入した話
Yutaka Kinjyo
Recommended
春のJs祭り2015 lt
春のJs祭り2015 lt
Yusuke Katsuki
第一回Rest勉強会 ワークショップ
第一回Rest勉強会 ワークショップ
ksimoji
第一回REST勉強会_鈴木商店の開発環境
第一回REST勉強会_鈴木商店の開発環境
tsuchimon
Client-side MVC with Backbone.js
Client-side MVC with Backbone.js
iloveigloo
Backbone.js入門
Backbone.js入門
AdvancedTechNight
5分でわかる?Backbone.js ことはじめ
5分でわかる?Backbone.js ことはじめ
Kohei Kadowaki
いまさら聞けない!?Backbone.js 超入門
いまさら聞けない!?Backbone.js 超入門
Kohei Kadowaki
会社に Github導入した話
会社に Github導入した話
Yutaka Kinjyo
Aws summits2014 サイバーエージェント_ユーザーの趣味嗜好に適した広告配信システムdynalystができるまでad_techstudioでの...
Aws summits2014 サイバーエージェント_ユーザーの趣味嗜好に適した広告配信システムdynalystができるまでad_techstudioでの...
Boss4434
インフォバーングループにおけるAWS活用事例5選
インフォバーングループにおけるAWS活用事例5選
INFOBAHN.inc(株式会社インフォバーン)
AWS概要からサインアップまで! 〜アカウント開設 & 仮想サーバを立ててみる〜
AWS概要からサインアップまで! 〜アカウント開設 & 仮想サーバを立ててみる〜
Yasuhiro Horiuchi
AWS活用のいままでとこれから -東急ハンズの事例-
AWS活用のいままでとこれから -東急ハンズの事例-
Taiji INOUE
Slerとaws運用の付き合い方
Slerとaws運用の付き合い方
Sato Shun
超入門クラウド&AWS
超入門クラウド&AWS
Hiroyasu Yamada
ここが知りたいAws導入までのato z配布用
ここが知りたいAws導入までのato z配布用
takaoka susumu
エンターテイメント業界におけるAWS活用事例
エンターテイメント業界におけるAWS活用事例
Amazon Web Services Japan
これでAWSマスター!? 初心者向けAWS簡単講座
これでAWSマスター!? 初心者向けAWS簡単講座
Serverworks Co.,Ltd.
[AWS初心者向けWebinar] AWSを活用したモバイルアプリの開発と運用
[AWS初心者向けWebinar] AWSを活用したモバイルアプリの開発と運用
Amazon Web Services Japan
スタートアップならおさえておきたいAWS(Amazon Web Services)入門 1限目:サービス概要と基礎知識編 先生:
スタートアップならおさえておきたいAWS(Amazon Web Services)入門 1限目:サービス概要と基礎知識編 先生:
schoowebcampus
いまさら聞けないAWSクラウド - Java Festa 2013
いまさら聞けないAWSクラウド - Java Festa 2013
SORACOM, INC
スタートアップならおさえておきたいAWS(Amazon Web Services)入門 2限目:基本構成とピーク対策編
スタートアップならおさえておきたいAWS(Amazon Web Services)入門 2限目:基本構成とピーク対策編
schoowebcampus
PHPでWebSocketを実装してみてわかったこと
PHPでWebSocketを実装してみてわかったこと
ksimoji
第12回rest勉強会 これまでの補足・展望編
第12回rest勉強会 これまでの補足・展望編
ksimoji
第11回rest勉強会 リファクタリング(クライアント編)
第11回rest勉強会 リファクタリング(クライアント編)
ksimoji
第10回rest勉強会 リファクタリング(サーバ編)編
第10回rest勉強会 リファクタリング(サーバ編)編
ksimoji
第9回rest勉強会 ダウンロード・アップロード編
第9回rest勉強会 ダウンロード・アップロード編
ksimoji
第8回rest勉強会 bootstrap編
第8回rest勉強会 bootstrap編
ksimoji
第7回rest勉強会 バリデーション編
第7回rest勉強会 バリデーション編
ksimoji
第6回rest勉強会 アソシエーション編
第6回rest勉強会 アソシエーション編
ksimoji
第5回rest勉強会 ログイン編
第5回rest勉強会 ログイン編
ksimoji
More Related Content
Viewers also liked
Aws summits2014 サイバーエージェント_ユーザーの趣味嗜好に適した広告配信システムdynalystができるまでad_techstudioでの...
Aws summits2014 サイバーエージェント_ユーザーの趣味嗜好に適した広告配信システムdynalystができるまでad_techstudioでの...
Boss4434
インフォバーングループにおけるAWS活用事例5選
インフォバーングループにおけるAWS活用事例5選
INFOBAHN.inc(株式会社インフォバーン)
AWS概要からサインアップまで! 〜アカウント開設 & 仮想サーバを立ててみる〜
AWS概要からサインアップまで! 〜アカウント開設 & 仮想サーバを立ててみる〜
Yasuhiro Horiuchi
AWS活用のいままでとこれから -東急ハンズの事例-
AWS活用のいままでとこれから -東急ハンズの事例-
Taiji INOUE
Slerとaws運用の付き合い方
Slerとaws運用の付き合い方
Sato Shun
超入門クラウド&AWS
超入門クラウド&AWS
Hiroyasu Yamada
ここが知りたいAws導入までのato z配布用
ここが知りたいAws導入までのato z配布用
takaoka susumu
エンターテイメント業界におけるAWS活用事例
エンターテイメント業界におけるAWS活用事例
Amazon Web Services Japan
これでAWSマスター!? 初心者向けAWS簡単講座
これでAWSマスター!? 初心者向けAWS簡単講座
Serverworks Co.,Ltd.
[AWS初心者向けWebinar] AWSを活用したモバイルアプリの開発と運用
[AWS初心者向けWebinar] AWSを活用したモバイルアプリの開発と運用
Amazon Web Services Japan
スタートアップならおさえておきたいAWS(Amazon Web Services)入門 1限目:サービス概要と基礎知識編 先生:
スタートアップならおさえておきたいAWS(Amazon Web Services)入門 1限目:サービス概要と基礎知識編 先生:
schoowebcampus
いまさら聞けないAWSクラウド - Java Festa 2013
いまさら聞けないAWSクラウド - Java Festa 2013
SORACOM, INC
スタートアップならおさえておきたいAWS(Amazon Web Services)入門 2限目:基本構成とピーク対策編
スタートアップならおさえておきたいAWS(Amazon Web Services)入門 2限目:基本構成とピーク対策編
schoowebcampus
Viewers also liked
(13)
Aws summits2014 サイバーエージェント_ユーザーの趣味嗜好に適した広告配信システムdynalystができるまでad_techstudioでの...
Aws summits2014 サイバーエージェント_ユーザーの趣味嗜好に適した広告配信システムdynalystができるまでad_techstudioでの...
インフォバーングループにおけるAWS活用事例5選
インフォバーングループにおけるAWS活用事例5選
AWS概要からサインアップまで! 〜アカウント開設 & 仮想サーバを立ててみる〜
AWS概要からサインアップまで! 〜アカウント開設 & 仮想サーバを立ててみる〜
AWS活用のいままでとこれから -東急ハンズの事例-
AWS活用のいままでとこれから -東急ハンズの事例-
Slerとaws運用の付き合い方
Slerとaws運用の付き合い方
超入門クラウド&AWS
超入門クラウド&AWS
ここが知りたいAws導入までのato z配布用
ここが知りたいAws導入までのato z配布用
エンターテイメント業界におけるAWS活用事例
エンターテイメント業界におけるAWS活用事例
これでAWSマスター!? 初心者向けAWS簡単講座
これでAWSマスター!? 初心者向けAWS簡単講座
[AWS初心者向けWebinar] AWSを活用したモバイルアプリの開発と運用
[AWS初心者向けWebinar] AWSを活用したモバイルアプリの開発と運用
スタートアップならおさえておきたいAWS(Amazon Web Services)入門 1限目:サービス概要と基礎知識編 先生:
スタートアップならおさえておきたいAWS(Amazon Web Services)入門 1限目:サービス概要と基礎知識編 先生:
いまさら聞けないAWSクラウド - Java Festa 2013
いまさら聞けないAWSクラウド - Java Festa 2013
スタートアップならおさえておきたいAWS(Amazon Web Services)入門 2限目:基本構成とピーク対策編
スタートアップならおさえておきたいAWS(Amazon Web Services)入門 2限目:基本構成とピーク対策編
More from ksimoji
PHPでWebSocketを実装してみてわかったこと
PHPでWebSocketを実装してみてわかったこと
ksimoji
第12回rest勉強会 これまでの補足・展望編
第12回rest勉強会 これまでの補足・展望編
ksimoji
第11回rest勉強会 リファクタリング(クライアント編)
第11回rest勉強会 リファクタリング(クライアント編)
ksimoji
第10回rest勉強会 リファクタリング(サーバ編)編
第10回rest勉強会 リファクタリング(サーバ編)編
ksimoji
第9回rest勉強会 ダウンロード・アップロード編
第9回rest勉強会 ダウンロード・アップロード編
ksimoji
第8回rest勉強会 bootstrap編
第8回rest勉強会 bootstrap編
ksimoji
第7回rest勉強会 バリデーション編
第7回rest勉強会 バリデーション編
ksimoji
第6回rest勉強会 アソシエーション編
第6回rest勉強会 アソシエーション編
ksimoji
第5回rest勉強会 ログイン編
第5回rest勉強会 ログイン編
ksimoji
第4回REST勉強会 RequireJS編
第4回REST勉強会 RequireJS編
ksimoji
More from ksimoji
(10)
PHPでWebSocketを実装してみてわかったこと
PHPでWebSocketを実装してみてわかったこと
第12回rest勉強会 これまでの補足・展望編
第12回rest勉強会 これまでの補足・展望編
第11回rest勉強会 リファクタリング(クライアント編)
第11回rest勉強会 リファクタリング(クライアント編)
第10回rest勉強会 リファクタリング(サーバ編)編
第10回rest勉強会 リファクタリング(サーバ編)編
第9回rest勉強会 ダウンロード・アップロード編
第9回rest勉強会 ダウンロード・アップロード編
第8回rest勉強会 bootstrap編
第8回rest勉強会 bootstrap編
第7回rest勉強会 バリデーション編
第7回rest勉強会 バリデーション編
第6回rest勉強会 アソシエーション編
第6回rest勉強会 アソシエーション編
第5回rest勉強会 ログイン編
第5回rest勉強会 ログイン編
第4回REST勉強会 RequireJS編
第4回REST勉強会 RequireJS編
第3回Rest勉強会 marionette編
1.
ワークショップ ■ Lesson1 エントリポイント・ルーティング・コントローラ ■ Lesson2 TODO一覧画面にMarionetteのビューを適用 ■
Lesson3 TODO詳細画面にMarionetteのビューを適用
2.
進め方 1. Marionetteの解説(5分) 2. 事前準備についての解説(5分) 3.
事前準備作業 4. Lesson1の解説(5分) 5. Lesson1の作業(20分) ⇢制限時間内に間に合わない場合は解答をコピペして次のLessonへ。 6. Lesson2の解説 ∼以下Lesson3まで同様∼
3.
Marionetteで コードがどう変わるか
4.
View周りの改善がメイン • Router, Controllerも少し改善 •
細かいのも有りますが今回はあまり触れません
5.
View周りの改善 1. Viewの切り替えが楽 2. ネストしたViewの管理が楽 3.
テンプレートの描画が楽 4. その他
6.
1. Viewの切り替えが 簡単
7.
ビューの切り替え Marionetteがない時 表示中のビューを削除 (HTMLエレメントごと消える!) HTMLエレメントを再作成 再作成したHTMLエレメントに Viewを表示 ビュー表示中? No Yes
8.
// 現在のビュー currentView :
null, // TODOリスト表示 showTodoLists : function() { // 表示中のビューがあれば if (this.currentView) { // 先に削除しておく this.currentView.remove(); } // 削除すると #content のエレメントも一緒に消える if (document.getElementById('#content') === null) { // ので、改めて作っておく $('#main').append('<div id="content"/>'); } // ビューを生成 this.currentView = new app.TodoCollectionView(); } ビューの切り替え(コード例) Marionetteがない時
9.
ビューの切り替え Marionetteがある時 リージョンにビューを表示
10.
ビューの切り替え(コード例) Marionetteがある時 showTodoLists : function()
{ app.application.mainRegion.show(new app.TodoCollectionView()); } 「Region(リージョン)」に嵌めこむだけ! ※リージョンについては後ほど
11.
2. ネストしたViewの 管理が楽
12.
TODO一覧View ネストしたViewの例 ■ TODO一覧ViewとTODO1件View TODO1件View TODO1件View TODO1件View TODO1件View
13.
ネストしたView - 「TODO1件View」を表示する Marionetteがない時 表示するModelを準備 TODO1件Viewを生成 TODO1件Viewをrenderして HTMLエレメント取得 取得したHTMLエレメントを 親HTMLエレメントにAppend
14.
// TODO1件表示関数 // 引数
: 表示するModel addOne : function(todo) { // Modelを渡してView生成 var itemView = new app.TodoItemView({ model : todo }); // renderしてHTMLエレメント取得 var html = itemView.render().el; // 親HTMLエレメントにappend $('#todo-lists').append(html); } ネストしたView - 「TODO1件View」を表示する Marionetteがない時
15.
Marionetteがある時 TODO1件Viewのオブジェクト名を設定 ネストしたView - 「TODO1件View」を表示する 親HTMLエレメントを設定
16.
childView : app.TodoItemView, childViewContainer
: 'tbody', ・TODO1件ビューのオブジェクト名 ・親HTMLエレメント を設定するだけ! ネストしたView - 「TODO1件View」を表示する Marionetteがある時
17.
YコンテンツLayoutView XコンテンツLayoutView ネストしたViewの例 ■ Viewの階層構造 コンテンツRegion メニューボタン表示Region ヘッダRegion フッタRegion データ表示Region ページ切り替えボタン表示Region メニューボタン表示View データ表示View ページ切り替えボタン表示View ヘッダ表示View フッタ表示View 「Region(リージョン)」 という便利機能!
18.
3. テンプレート の描画が楽
19.
Marionetteがない時 テンプレートのHTMLエレメントを取得 Modelから表示用データを取り出す 描画する テンプレートの描画
20.
// テンプレートのHTMLエレメントを取得 template :
_.template($( #detail-template').html()), // 描画関数 render : function() { // Modelから表示用データを取り出す var data = this.model.toJSON(); // 描画する this.$el.html(this.template(data)); }, Marionetteがない時 テンプレートの描画
21.
テンプレートの描画 Marionetteがある時 テンプレートのIDを設定
22.
template: #todo-detail-item-template", Marionetteがある時 テンプレートの描画 template変数に使用するID を指定するだけ!
23.
4. その他
24.
•ui変数 • ビュー内のHTMLエレメントのセレクタの記述を一箇所に集約する。 • `@ui.∼`の形式でビュー内から参照可能となる。 •regions変数 •
リージョンを簡単に定義する。 •triggers, trigger • triggerで発火したイベントをtriggersで購読して関数実行 •behaviors •共通処理をMixInする機能 •etc... その他 ui変数とregions変数は今回扱います。 その他は調べてみましょう!
25.
本日のワークショップ
26.
メニュー ■ gitのブランチを整える ■ Marionetteライブラリダウンロード ■
Lesson1 エントリポイント・ルーティング・コントローラ ■ Lesson2 TODO一覧画面にMarionetteのビューを適用 ■ Lesson3 TODO詳細画面にMarionetteのビューを適用
27.
gitのブランチ を整える メニュー ■ gitのブランチを整える ■ Marionetteライブラリダウンロード ■
Lesson1 エントリポイント・ルーティング・コントローラ ■ Lesson2 TODO一覧画面にMarionetteのビューを適用 ■ Lesson3 TODO詳細画面にMarionetteのビューを適用
28.
gitのブランチを整える ■masterブランチを前回の終了状態にする ■masterブランチを元に、今回の作業用である、 「vol/03」ブランチを作成する ※作業の過程で、今回の内容を終えた状態の 解答ブランチ である、 「vol/03-finish」ブランチも取得されます。 どう整えるのか
29.
gitのブランチを整える 人によってやり方が違 います!(重要) ■前回の内容を完了した方 ⇢vol/02ブランチが綺麗に完了済み! ■前回の内容を途中までやった方 ⇢vol/02ブランチが編集途中の状態 ■今回から参加の方 (第1回勉強会の内容は終えている状態) ⇢vol/02ブランチは作っていない!
30.
gitのブランチを整える ともかく Commit! ■前回の内容を途中までやった方 未コミットのファイルを無くしてきれいにする!
31.
gitのブランチを整える 次の手順はみ んな同じです! ■前回の内容を完了した方 ■前回の内容を途中までやった方 ■今回から参加の方
32.
gitのブランチを整える 鈴木商店GitHubを リモートリポジトリとして追加する 第1回で、鈴木商店GitHubからforkしました。 「鈴木商店GitHub」を「リモートリポジトリ」 として登録する作業です。
33.
gitのブランチを整える origin upstream ←これがあればOK! 鈴木商店GitHubをリモートリポジトリとして追加する git remote とやって、下記が表示される人は既にこの 作業が終わっています。次へ行きましょう。
34.
gitのブランチを整える git remote add
upstream https://github.com/suzukishouten- study/rest-study.git 鈴木商店GitHubをリモートリポジトリとして追加する コマンド (実際は一行です) 鈴木商店GitHub https://github.com/suzukishouten-study/rest-study.git を、リモートリポジトリ名 「upstream」 として登録する作業です。
35.
鈴木商店 勉強会用 GitHubリポジトリ master vol/02-finish vol/03-finish vol/01-finish EC2インスタンス 作業用として使用 master vol/02-finish vol/03-finish vol/01-finish vol/02 vol/01 vol/03 ローカルリポジトリ gitのブランチを整える イメージ upstream 自分の GitHubリポジトリ master vol/02 vol/01 origin clone時に登録済み これを登録!
36.
gitのブランチを整える 次の手順もみ んな同じです! ■前回の内容を完了した方 ■前回の内容を途中までやった方 ■今回から参加の方
37.
gitのブランチを整える 鈴木商店GitHubから最新の コミットを取得する 前回の終了状態である 「vol/02-finish」ブランチを ローカルリポジトリに取得する作業です。 ※今回の終了状態として事前に用意した、 「vol/03-finish」ブランチも取得されます。
38.
gitのブランチを整える git fetch upstream 鈴木商店GitHubから最新のコミットを取得する コマンド
39.
gitのブランチを整える 次の手順は注意! ■前回の内容を完了した方 ■前回の内容を途中までやった方と今回から参加の方 ローカルリポジトリのvol/02 ブランチをmasterブランチにマージ upstreamリポジトリのvol/02-finish ブランチをmasterブランチにマージ
40.
gitのブランチを整える git checkout master コマンド ■前回の内容を完了した方 続いて、 git
merge vol/02 ローカルリポジトリのvol/02 ブランチをmasterブランチにマージ
41.
gitのブランチを整える git checkout master コマンド 続いて、 git
reset --hard upstream/vol/02-finish ■前回の内容を途中までやった方と今回から参加の方 upstreamリポジトリのvol/02-finish ブランチをmasterブランチにマージ
42.
gitのブランチを整える 最後の手順はみ んな同じです! これでmasterブランチは全員、 「前回の終了状態」 になりました!
43.
gitのブランチを整える git branch vol/03 コマンド 続いて、 git
checkout vol/03 今回の作業用である、 「vol/03」ブランチを作成する これでブランチ作成、チェックアウトまで完了!
44.
Marionetteライブラリ ダウンロード メニュー ■ gitのブランチを整える ■ Marionetteのライブラリダウンロード ■
Lesson1 エントリポイント・ルーティング・コントローラ ■ Lesson2 TODO一覧画面にMarionetteのビューを適用 ■ Lesson3 TODO詳細画面にMarionetteのビューを適用
45.
Marionetteライブラリダウンロード ダウンロード先ディレクトリ ココ /var/www/study/rest-study/ ├── app │ ∼略∼ │
└── webroot │ ├── css │ ├── files │ ├── img │ └── js │ ├── collections │ ├── lib │ ├── models │ ├── routers │ └── views /var/www/study/rest-study/app/webroot/js/lib wget http://marionettejs.com/downloads/backbone.marionette.min.js ダウンロード元(Marionette.js公式サイト) http://marionettejs.com/downloads/backbone.marionette.min.js wgetコマンドでダウンロード
46.
Lesson1 エントリポイント ルーティング コントローラ メニュー ■ gitのブランチを整える ■ Marionetteのライブラリダウンロード ■
Lesson1 エントリポイント・ルーティング・コントローラ ■ Lesson2 TODO一覧画面にMarionetteのビューを適用 ■ Lesson3 TODO詳細画面にMarionetteのビューを適用
47.
Lesson1 エントリポイント・ルーティング・コントローラ •エントリポイントの変更 •ルータとコントローラの分離 ■ポイント
48.
エントリポイントの変更 エントリポイントは、 「app.js」 • app.jsはただの関数(Backbone関係なし) • routerをインスタンス化 •
Backbone.history.start() を実行して「hashchangeイベント」の監視を開始 修正前 修正後 エントリポイントは、 「main.js」に変更 • app.jsで上記処理を実装 • app.jsは “Marionette.Application” を継承する • main.jsでは、app.jsで実装した機能を”start”するだけ • main.jsはだだの関数(BackboneもMarionetteも関係なし)
49.
ルータとコントローラの分離 「router.js」が、ルータとコントローラを兼ねていた • ルーティング設定を書く • ルーティング後に実行される関数の実装も書く 修正前 修正後 「router.js」と「controller.js」に分離 •
router.js • ルーティング設定のみ • “Marionette.AppRouter” を継承する • controller.js • ルーティング後に実行される関数の実装を書く • “Marionette.Controller” を継承する
50.
いざ開発!
51.
マニュアル http://goo.gl/r0Y2BW ジーオーオー.ジーエル/ アールゼロワイ2ビーダブリュー
52.
Lesson2 TODO一覧画面に Marionetteのビューを適用 メニュー ■ gitのブランチを整える ■ Marionetteのライブラリダウンロード ■
Lesson1 エントリポイント・ルーティング・コントローラ ■ Lesson2 TODO一覧画面にMarionetteのビューを適用 ■ Lesson3 TODO詳細画面にMarionetteのビューを適用
53.
Lesson2 TODO一覧画面にMarionetteのビューを適用 • Region •
LayoutView • CompositeView • ItemView ■ポイント MarionetteのRegionと各View の役割を理解する
54.
Lesson2 TODO一覧画面にMarionetteのビューを適用 ■ネスト構造 それぞれ下図の様に配置されます
55.
TODO一覧画面でのRegionと各Viewの役割 • LayoutViewを表示するためのコンテナ • Region内にLayoutViewを表示する処理はcontroller.js内に記述している Region(app.js内で定義) LayoutViewRegion controller.js •
app.js内で定義されたRegionにLayoutViewを表示する ⇢app.application.mainRegion.show(new View(option)); controller.js で表示処理 app.js todo-layout-view.js
56.
TODO一覧画面でのRegionと各Viewの役割 • TODO一覧画面のコンテンツ全体をレイアウトする(Templateを持つ) • TODO一覧データ(CompositeView)を表示するためのRegionを定義している •
collectionをfetchしてデータを取得し、Region内にCompositeViewを表示する LayoutView(todo-layout-view.jsで定義) CompositeView LayoutView todo-layout-view.js Region データ (Collection) todo-composite-view.js 取得 はめ込む 生成
57.
TODO一覧画面でのRegionと各Viewの役割 • TODO追加用<textArea>、一覧表示用<table>を表示(Templateを持つ) • TODO追加ボタンのクリックイベントを処理する •
collectionにデータを追加(collection.create())する • TODO1件を表示するItemViewのオブジェクトと表示位置を指定 CompositeView(todo-composite-view.jsで定義) ItemView CompositeView todo-composite-view.js todo-item-view.js 使用する ItemViewを指定 • ChildView : ItemView • ChildViewContainer : ‘tbody’ データ (Collection) 追加ボタンクリック時 にcollection.create() Template
58.
TODO一覧画面でのRegionと各Viewの役割 • TODO表示用<tr>、チェックボックス、削除リンク、詳細リンクを表示(Templateを持つ) • チェックボックス、削除リンクのクリックイベントを処理する •
データ(Model)を削除(model.destroy())する ItemView(todo-item-view.jsで定義) ItemView todo-item-view.js データ (Collection) 削除リンククリック時 にmodel.destroy() Template
59.
Lesson3 TODO詳細画面に Marionetteのビューを適用 メニュー ■ gitのブランチを整える ■ Marionetteのライブラリダウンロード ■
Lesson1 エントリポイント・ルーティング・コントローラ ■ Lesson2 TODO一覧画面にMarionetteのビューを適用 ■ Lesson3 TODO詳細画面にMarionetteのビューを適用
60.
Lesson3 TODO詳細画面にMarionetteのビューを適用 • Region •
LayoutView • ItemView ■ポイント Lesson2とほぼ同じです • ※CompositeViewがないだけ マニュアル見つつやってみしょう!
61.
いざ開発!
Download now