Soumettre la recherche
Mettre en ligne
AngularJS入門の巻
•
47 j'aime
•
12,815 vues
Toshio Ehara
Suivre
2014/5/11(日)第8回福岡市西区プログラム勉強会 ”福岡の西の果てでIT系の総合勉強会”
Lire moins
Lire la suite
Signaler
Partager
Signaler
Partager
1 sur 33
Télécharger maintenant
Télécharger pour lire hors ligne
Recommandé
AngularJS入門の巻2
AngularJS入門の巻2
Toshio Ehara
今後のWeb開発の未来を考えてangularJSにしました
今後のWeb開発の未来を考えてangularJSにしました
Mitsuru Ogawa
AngularJSで業務システムUI部品化
AngularJSで業務システムUI部品化
Toshio Ehara
AngularJS勉強会「そもそもwebって」@ツクロア勉強会(2015.09.10)
AngularJS勉強会「そもそもwebって」@ツクロア勉強会(2015.09.10)
tomonari takahashi
noteをAngularJSで構築した話
noteをAngularJSで構築した話
Kon Yuichi
STORES.jp x AngularJS
STORES.jp x AngularJS
Keisuke Makino
【eLV勉強会】AngularJSでのモバイルフロントエンド開発
【eLV勉強会】AngularJSでのモバイルフロントエンド開発
Hiroyuki Kusu
今後のWeb開発の未来を考えてangular jsにしました(拡大版)
今後のWeb開発の未来を考えてangular jsにしました(拡大版)
Mitsuru Ogawa
Recommandé
AngularJS入門の巻2
AngularJS入門の巻2
Toshio Ehara
今後のWeb開発の未来を考えてangularJSにしました
今後のWeb開発の未来を考えてangularJSにしました
Mitsuru Ogawa
AngularJSで業務システムUI部品化
AngularJSで業務システムUI部品化
Toshio Ehara
AngularJS勉強会「そもそもwebって」@ツクロア勉強会(2015.09.10)
AngularJS勉強会「そもそもwebって」@ツクロア勉強会(2015.09.10)
tomonari takahashi
noteをAngularJSで構築した話
noteをAngularJSで構築した話
Kon Yuichi
STORES.jp x AngularJS
STORES.jp x AngularJS
Keisuke Makino
【eLV勉強会】AngularJSでのモバイルフロントエンド開発
【eLV勉強会】AngularJSでのモバイルフロントエンド開発
Hiroyuki Kusu
今後のWeb開発の未来を考えてangular jsにしました(拡大版)
今後のWeb開発の未来を考えてangular jsにしました(拡大版)
Mitsuru Ogawa
エンタープライヤーのためのWeb Componentsハンズオン
エンタープライヤーのためのWeb Componentsハンズオン
Mitsuru Ogawa
【ABC2014Spring LT】AngularJSでWEBアプリ開発
【ABC2014Spring LT】AngularJSでWEBアプリ開発
Hiroyuki Kusu
Spring Boot + Doma + AngularJSで作るERP 〜JavaQneバージョン〜 #jqfk
Spring Boot + Doma + AngularJSで作るERP 〜JavaQneバージョン〜 #jqfk
学 松崎
開発ライフサイクルから見たAngularJS
開発ライフサイクルから見たAngularJS
Mizuho Sakamaki
Enterprise x AngularJS
Enterprise x AngularJS
Kenichi Kanai
STORES.jpのそだてかた
STORES.jpのそだてかた
Keisuke Makino
これからフロントエンジニアを目指すあなたへ
これからフロントエンジニアを目指すあなたへ
Mitsuru Ogawa
AngularとOnsen UIで作る最高のHTML5ハイブリッドアプリ
AngularとOnsen UIで作る最高のHTML5ハイブリッドアプリ
アシアル株式会社
Service Workers Push API Hands-on
Service Workers Push API Hands-on
Takenori Nakagawa
Angular js開発事例
Angular js開発事例
Shun Takeyama
フロントエンド初学者がSPAに手を出してみた
フロントエンド初学者がSPAに手を出してみた
Kei Yagi
TechFeedのつくりかた - Angular2/Webpack/Ionic2/Cordova実践入門
TechFeedのつくりかた - Angular2/Webpack/Ionic2/Cordova実践入門
Shumpei Shiraishi
Angular2
Angular2
Kenichi Kanai
超初心者でも大丈夫!AngularJSでフォームページをちょっとリッチに改造してみよう
超初心者でも大丈夫!AngularJSでフォームページをちょっとリッチに改造してみよう
Horiguchi Seito
Angular jsの継続的なバージョンアップ
Angular jsの継続的なバージョンアップ
Kazuyoshi Tsuchiya
AngularJSのDirectiveで俺俺タグつくっちゃお
AngularJSのDirectiveで俺俺タグつくっちゃお
Toshio Ehara
[社内勉強会]SPAのすすめ
[社内勉強会]SPAのすすめ
hirooooo
Service Workers
Service Workers
Takenori Nakagawa
Spring Boot + Doma + AngularJSで作るERP (LINE Fukuoka Meetup版)
Spring Boot + Doma + AngularJSで作るERP (LINE Fukuoka Meetup版)
学 松崎
Java開発で活かしてほしいGit,CI,そして継続的デリバリー #jjug_ccc #ccc_r13
Java開発で活かしてほしいGit,CI,そして継続的デリバリー #jjug_ccc #ccc_r13
智治 長沢
AngularJS+TypeScriptを試してみた。
AngularJS+TypeScriptを試してみた。
Toshio Ehara
メンテナンス性の良いWebシステムを構築するためにjavaとフロントエンドでやるべきこと
メンテナンス性の良いWebシステムを構築するためにjavaとフロントエンドでやるべきこと
Mitsuru Ogawa
Contenu connexe
Tendances
エンタープライヤーのためのWeb Componentsハンズオン
エンタープライヤーのためのWeb Componentsハンズオン
Mitsuru Ogawa
【ABC2014Spring LT】AngularJSでWEBアプリ開発
【ABC2014Spring LT】AngularJSでWEBアプリ開発
Hiroyuki Kusu
Spring Boot + Doma + AngularJSで作るERP 〜JavaQneバージョン〜 #jqfk
Spring Boot + Doma + AngularJSで作るERP 〜JavaQneバージョン〜 #jqfk
学 松崎
開発ライフサイクルから見たAngularJS
開発ライフサイクルから見たAngularJS
Mizuho Sakamaki
Enterprise x AngularJS
Enterprise x AngularJS
Kenichi Kanai
STORES.jpのそだてかた
STORES.jpのそだてかた
Keisuke Makino
これからフロントエンジニアを目指すあなたへ
これからフロントエンジニアを目指すあなたへ
Mitsuru Ogawa
AngularとOnsen UIで作る最高のHTML5ハイブリッドアプリ
AngularとOnsen UIで作る最高のHTML5ハイブリッドアプリ
アシアル株式会社
Service Workers Push API Hands-on
Service Workers Push API Hands-on
Takenori Nakagawa
Angular js開発事例
Angular js開発事例
Shun Takeyama
フロントエンド初学者がSPAに手を出してみた
フロントエンド初学者がSPAに手を出してみた
Kei Yagi
TechFeedのつくりかた - Angular2/Webpack/Ionic2/Cordova実践入門
TechFeedのつくりかた - Angular2/Webpack/Ionic2/Cordova実践入門
Shumpei Shiraishi
Angular2
Angular2
Kenichi Kanai
超初心者でも大丈夫!AngularJSでフォームページをちょっとリッチに改造してみよう
超初心者でも大丈夫!AngularJSでフォームページをちょっとリッチに改造してみよう
Horiguchi Seito
Angular jsの継続的なバージョンアップ
Angular jsの継続的なバージョンアップ
Kazuyoshi Tsuchiya
AngularJSのDirectiveで俺俺タグつくっちゃお
AngularJSのDirectiveで俺俺タグつくっちゃお
Toshio Ehara
[社内勉強会]SPAのすすめ
[社内勉強会]SPAのすすめ
hirooooo
Service Workers
Service Workers
Takenori Nakagawa
Spring Boot + Doma + AngularJSで作るERP (LINE Fukuoka Meetup版)
Spring Boot + Doma + AngularJSで作るERP (LINE Fukuoka Meetup版)
学 松崎
Java開発で活かしてほしいGit,CI,そして継続的デリバリー #jjug_ccc #ccc_r13
Java開発で活かしてほしいGit,CI,そして継続的デリバリー #jjug_ccc #ccc_r13
智治 長沢
Tendances
(20)
エンタープライヤーのためのWeb Componentsハンズオン
エンタープライヤーのためのWeb Componentsハンズオン
【ABC2014Spring LT】AngularJSでWEBアプリ開発
【ABC2014Spring LT】AngularJSでWEBアプリ開発
Spring Boot + Doma + AngularJSで作るERP 〜JavaQneバージョン〜 #jqfk
Spring Boot + Doma + AngularJSで作るERP 〜JavaQneバージョン〜 #jqfk
開発ライフサイクルから見たAngularJS
開発ライフサイクルから見たAngularJS
Enterprise x AngularJS
Enterprise x AngularJS
STORES.jpのそだてかた
STORES.jpのそだてかた
これからフロントエンジニアを目指すあなたへ
これからフロントエンジニアを目指すあなたへ
AngularとOnsen UIで作る最高のHTML5ハイブリッドアプリ
AngularとOnsen UIで作る最高のHTML5ハイブリッドアプリ
Service Workers Push API Hands-on
Service Workers Push API Hands-on
Angular js開発事例
Angular js開発事例
フロントエンド初学者がSPAに手を出してみた
フロントエンド初学者がSPAに手を出してみた
TechFeedのつくりかた - Angular2/Webpack/Ionic2/Cordova実践入門
TechFeedのつくりかた - Angular2/Webpack/Ionic2/Cordova実践入門
Angular2
Angular2
超初心者でも大丈夫!AngularJSでフォームページをちょっとリッチに改造してみよう
超初心者でも大丈夫!AngularJSでフォームページをちょっとリッチに改造してみよう
Angular jsの継続的なバージョンアップ
Angular jsの継続的なバージョンアップ
AngularJSのDirectiveで俺俺タグつくっちゃお
AngularJSのDirectiveで俺俺タグつくっちゃお
[社内勉強会]SPAのすすめ
[社内勉強会]SPAのすすめ
Service Workers
Service Workers
Spring Boot + Doma + AngularJSで作るERP (LINE Fukuoka Meetup版)
Spring Boot + Doma + AngularJSで作るERP (LINE Fukuoka Meetup版)
Java開発で活かしてほしいGit,CI,そして継続的デリバリー #jjug_ccc #ccc_r13
Java開発で活かしてほしいGit,CI,そして継続的デリバリー #jjug_ccc #ccc_r13
Similaire à AngularJS入門の巻
AngularJS+TypeScriptを試してみた。
AngularJS+TypeScriptを試してみた。
Toshio Ehara
メンテナンス性の良いWebシステムを構築するためにjavaとフロントエンドでやるべきこと
メンテナンス性の良いWebシステムを構築するためにjavaとフロントエンドでやるべきこと
Mitsuru Ogawa
JAWS-UGにゴマをすろうと思ってAWSでHTML5してみた
JAWS-UGにゴマをすろうと思ってAWSでHTML5してみた
Masakazu Muraoka
JAWS-UG初心者支部 AWS書籍活用術
JAWS-UG初心者支部 AWS書籍活用術
Takuro Sasaki
pairsでのAngularJS x TypeScript x e2e @めぐすた#1
pairsでのAngularJS x TypeScript x e2e @めぐすた#1
Takuma Morikawa
How to develop a huge Single Page Application
How to develop a huge Single Page Application
Naoki Yamada
Backbonejs @BuildInsiderOffline #1
Backbonejs @BuildInsiderOffline #1
daisuke shimizu
TDD BootCamp in JJUG CCC - レガシーコード対策編 -
TDD BootCamp in JJUG CCC - レガシーコード対策編 -
Shuji Watanabe
Jawsug osaka10 service®ions
Jawsug osaka10 service®ions
Takuro Sasaki
Global Azure Bootcamp 2019@Tokyo資料【ExpressRoute構築でハメられた】
Global Azure Bootcamp 2019@Tokyo資料【ExpressRoute構築でハメられた】
Dai Iwai
BACKBONE.JSによるWebアプリケーション開発について
BACKBONE.JSによるWebアプリケーション開発について
Toshio Ehara
我が家のフロントエンド開発事情
我が家のフロントエンド開発事情
Naoki Yamada
ビギナーがUNIQLOCKもどきを作ってみた
ビギナーがUNIQLOCKもどきを作ってみた
Taisuke Ozaki
Amplify Console使ってみたらいい感じ
Amplify Console使ってみたらいい感じ
Osamu Hashimoto
JAWS-UG 各支部紹介スライド in AWS Summit Tokyo 2018
JAWS-UG 各支部紹介スライド in AWS Summit Tokyo 2018
Shigeru Numaguchi
20200912 昔、オンプレミスでやっていたことを AWS でやるとどうなるか
20200912 昔、オンプレミスでやっていたことを AWS でやるとどうなるか
Masaru Ogura
俺と超高速リアルタイム検索APIをたぶん支えているAWS
俺と超高速リアルタイム検索APIをたぶん支えているAWS
Masayuki KaToH
JAWS-UG 初心者支部 #4 東急ハンズのEC2の使いかた
JAWS-UG 初心者支部 #4 東急ハンズのEC2の使いかた
Tomoaki Imai
JAWS-UGサミット2011春 LT資料
JAWS-UGサミット2011春 LT資料
Yuuki Namikawa
ngJapan報告会
ngJapan報告会
Fumio SAGAWA
Similaire à AngularJS入門の巻
(20)
AngularJS+TypeScriptを試してみた。
AngularJS+TypeScriptを試してみた。
メンテナンス性の良いWebシステムを構築するためにjavaとフロントエンドでやるべきこと
メンテナンス性の良いWebシステムを構築するためにjavaとフロントエンドでやるべきこと
JAWS-UGにゴマをすろうと思ってAWSでHTML5してみた
JAWS-UGにゴマをすろうと思ってAWSでHTML5してみた
JAWS-UG初心者支部 AWS書籍活用術
JAWS-UG初心者支部 AWS書籍活用術
pairsでのAngularJS x TypeScript x e2e @めぐすた#1
pairsでのAngularJS x TypeScript x e2e @めぐすた#1
How to develop a huge Single Page Application
How to develop a huge Single Page Application
Backbonejs @BuildInsiderOffline #1
Backbonejs @BuildInsiderOffline #1
TDD BootCamp in JJUG CCC - レガシーコード対策編 -
TDD BootCamp in JJUG CCC - レガシーコード対策編 -
Jawsug osaka10 service®ions
Jawsug osaka10 service®ions
Global Azure Bootcamp 2019@Tokyo資料【ExpressRoute構築でハメられた】
Global Azure Bootcamp 2019@Tokyo資料【ExpressRoute構築でハメられた】
BACKBONE.JSによるWebアプリケーション開発について
BACKBONE.JSによるWebアプリケーション開発について
我が家のフロントエンド開発事情
我が家のフロントエンド開発事情
ビギナーがUNIQLOCKもどきを作ってみた
ビギナーがUNIQLOCKもどきを作ってみた
Amplify Console使ってみたらいい感じ
Amplify Console使ってみたらいい感じ
JAWS-UG 各支部紹介スライド in AWS Summit Tokyo 2018
JAWS-UG 各支部紹介スライド in AWS Summit Tokyo 2018
20200912 昔、オンプレミスでやっていたことを AWS でやるとどうなるか
20200912 昔、オンプレミスでやっていたことを AWS でやるとどうなるか
俺と超高速リアルタイム検索APIをたぶん支えているAWS
俺と超高速リアルタイム検索APIをたぶん支えているAWS
JAWS-UG 初心者支部 #4 東急ハンズのEC2の使いかた
JAWS-UG 初心者支部 #4 東急ハンズのEC2の使いかた
JAWS-UGサミット2011春 LT資料
JAWS-UGサミット2011春 LT資料
ngJapan報告会
ngJapan報告会
Plus de Toshio Ehara
iPhoneアプリを Javaで書くよ?
iPhoneアプリを Javaで書くよ?
Toshio Ehara
Java初心者勉強会(2015/08/07)資料
Java初心者勉強会(2015/08/07)資料
Toshio Ehara
Java電卓勉強会資料
Java電卓勉強会資料
Toshio Ehara
BABELで、ES2015(ES6)を学ぼう!
BABELで、ES2015(ES6)を学ぼう!
Toshio Ehara
traceur-compilerで ECMAScript6を体験
traceur-compilerで ECMAScript6を体験
Toshio Ehara
traceur-compilerで未来のJavaScriptを体験
traceur-compilerで未来のJavaScriptを体験
Toshio Ehara
JenkinsをJava開発でこんな感じで使っています
JenkinsをJava開発でこんな感じで使っています
Toshio Ehara
HTML5のCanvas入門 - Img画像を編集してみよう -
HTML5のCanvas入門 - Img画像を編集してみよう -
Toshio Ehara
BACKBONEJS+SCSS+JavaEE(JAX-RS) 今風のWebアプリをNetBeansで入門!
BACKBONEJS+SCSS+JavaEE(JAX-RS) 今風のWebアプリをNetBeansで入門!
Toshio Ehara
福岡のIT勉強会情報の集め方(LT資料)
福岡のIT勉強会情報の集め方(LT資料)
Toshio Ehara
BACKBONE.JSにJasmineでテストコード書いてみた (LT資料)
BACKBONE.JSにJasmineでテストコード書いてみた (LT資料)
Toshio Ehara
JavaScriptのテストコード 一緒に勉強しませんか??
JavaScriptのテストコード 一緒に勉強しませんか??
Toshio Ehara
【未発表】Backbone.jsとJavaEE7でWebアプリを作ろう!(第1回) 〜GETで一覧編〜
【未発表】Backbone.jsとJavaEE7でWebアプリを作ろう!(第1回) 〜GETで一覧編〜
Toshio Ehara
LT Leap MotionとJavaScriptで遊ぼう!
LT Leap MotionとJavaScriptで遊ぼう!
Toshio Ehara
JavaScriptもBACKBONE.JSならスッキリ ~MVCぽいのを初体験!~
JavaScriptもBACKBONE.JSならスッキリ ~MVCぽいのを初体験!~
Toshio Ehara
BACKBONE.JSでMVC始めませんか?
BACKBONE.JSでMVC始めませんか?
Toshio Ehara
はじめてのjQuery入門 01 2013年7月14日(日)
はじめてのjQuery入門 01 2013年7月14日(日)
Toshio Ehara
Cocos2d/2d-x/html5 [Objective-C/C++/JavaScript] 好みの言語はどれですか?
Cocos2d/2d-x/html5 [Objective-C/C++/JavaScript] 好みの言語はどれですか?
Toshio Ehara
JavascriptのMVC開発について調べてみた 〜BACKBONE.JS〜
JavascriptのMVC開発について調べてみた 〜BACKBONE.JS〜
Toshio Ehara
JavaScriptのthisって
JavaScriptのthisって
Toshio Ehara
Plus de Toshio Ehara
(20)
iPhoneアプリを Javaで書くよ?
iPhoneアプリを Javaで書くよ?
Java初心者勉強会(2015/08/07)資料
Java初心者勉強会(2015/08/07)資料
Java電卓勉強会資料
Java電卓勉強会資料
BABELで、ES2015(ES6)を学ぼう!
BABELで、ES2015(ES6)を学ぼう!
traceur-compilerで ECMAScript6を体験
traceur-compilerで ECMAScript6を体験
traceur-compilerで未来のJavaScriptを体験
traceur-compilerで未来のJavaScriptを体験
JenkinsをJava開発でこんな感じで使っています
JenkinsをJava開発でこんな感じで使っています
HTML5のCanvas入門 - Img画像を編集してみよう -
HTML5のCanvas入門 - Img画像を編集してみよう -
BACKBONEJS+SCSS+JavaEE(JAX-RS) 今風のWebアプリをNetBeansで入門!
BACKBONEJS+SCSS+JavaEE(JAX-RS) 今風のWebアプリをNetBeansで入門!
福岡のIT勉強会情報の集め方(LT資料)
福岡のIT勉強会情報の集め方(LT資料)
BACKBONE.JSにJasmineでテストコード書いてみた (LT資料)
BACKBONE.JSにJasmineでテストコード書いてみた (LT資料)
JavaScriptのテストコード 一緒に勉強しませんか??
JavaScriptのテストコード 一緒に勉強しませんか??
【未発表】Backbone.jsとJavaEE7でWebアプリを作ろう!(第1回) 〜GETで一覧編〜
【未発表】Backbone.jsとJavaEE7でWebアプリを作ろう!(第1回) 〜GETで一覧編〜
LT Leap MotionとJavaScriptで遊ぼう!
LT Leap MotionとJavaScriptで遊ぼう!
JavaScriptもBACKBONE.JSならスッキリ ~MVCぽいのを初体験!~
JavaScriptもBACKBONE.JSならスッキリ ~MVCぽいのを初体験!~
BACKBONE.JSでMVC始めませんか?
BACKBONE.JSでMVC始めませんか?
はじめてのjQuery入門 01 2013年7月14日(日)
はじめてのjQuery入門 01 2013年7月14日(日)
Cocos2d/2d-x/html5 [Objective-C/C++/JavaScript] 好みの言語はどれですか?
Cocos2d/2d-x/html5 [Objective-C/C++/JavaScript] 好みの言語はどれですか?
JavascriptのMVC開発について調べてみた 〜BACKBONE.JS〜
JavascriptのMVC開発について調べてみた 〜BACKBONE.JS〜
JavaScriptのthisって
JavaScriptのthisって
AngularJS入門の巻
1.
2014/5/11(日) 第8回福岡市西区プログラム勉強会 AngularJS入門の巻 Photo by
Web制作向け無料写真素材/ぱくたそ http://www.pakutaso.com
2.
-自己紹介- 株式会社キャムの江原と申します。 プログラマしてます。 twitter : @itokami1123 企業の経営戦略に役立つサービス「CAM
MACS」を AWSにて提供してます。
3.
今日はAngularJS知識を整理するため 自分なりに理解した事をなるべく分かり易く説明します。 変なとこ、意味が分かんないとこがあったら ツッコミをお願いしますね。 (@itokami1123まで)
4.
2014/5/11(日) 第8回福岡市西区プログラム勉強会 AngularJS入門 ご注意! オレオレ(独りよがり)な所も多々ございます。 ちゃんとした情報は公式サイトや書籍等をご覧ください。 ! ! ! ! ! ! ! ! ! ! 公式サイト: https://angularjs.org/ AngularJSアプリケーション開発ガイド
[大型本]
5.
- 今日の内容 - 1.
立ち上がれAngularの巻 2. moduleは俺のロッカーの巻 3. 依存してしまおうの巻 4. ブラウザ(DOM)に値を表示の巻 5. データ管理はサービスよの巻 6. データの反映は何時?の巻
6.
1.立ち上がれAngularの巻
7.
<script src=“//ajax.googleapis.com/ajax/libs/jquery/ 2.1.0/jquery.min.js”></script> ! ! ! <script src="https://ajax.googleapis.com/ajax/libs/ angularjs/1.3.0-beta.7/angular.min.js"
></script> ! ! <div class="jsTestApp" > {{ 1+1 }} </div> AngularJSのライブラリです! AngularJSの機能で {{ 1+1 }} で2が表示されるはずが.. ※jQueryも使いたい為に先に読み込んでます。(AngularJSに必要ではありません)
8.
{{ 1+1 }} AngularJSの機能で
{{ 1+1 }} で2が表示されるはずが、動いてない…
9.
$(function(){ $testApp = $(".jsTestApp"); angular.bootstrap(
$testApp[0] ); }); AngularJSで起動したいHTMLタグ要素を bootstrapで指定すると <div class="jsTestApp" > {{ 1+1 }} </div> 2 動いた!やったー! http://jsfiddle.net/itokami1123dev/TqEpb/2/
10.
$(function(){ $testApp = $(".jsTestApp"); angular.bootstrap(
$testApp[0] ); }); <div ng-app="" > {{ 1+1 }} </div> 2 ng-app(ngAppディレクティブ)で書くとすっきりしますね。 http://jsfiddle.net/itokami1123dev/bp4Ae/ ng-appを記述すれば、起動(bootstrap)処理を書かなくて良いです!
11.
2.moduleは俺のロッカーの巻
12.
angular.module("app",[]); appという名前の箱(名前空間)を作る事が出来ます! <div ng-app="app" > {{
1+1 }} </div> ng-appで指定した箱(名前空間)を使います。 http://jsfiddle.net/itokami1123dev/8L2aR/1/
13.
angular.module("services",[]); angular.module("controllers",[]); angular.module("app",["services","controllers"]); 名前の箱(名前空間)は、他の箱(名前空間)を第2引数に配列で設定出来ます。 <div ng-app="app" > {{
1+1 }} </div> http://jsfiddle.net/itokami1123dev/KY6rz/7/
14.
angular.module("services",[]); angular.module("controllers",[]); angular.module("app",["services","controllers"]); angular.module("controllers"). controller("CalculatorCtrl",[ "$scope", http://jsfiddle.net/itokami1123dev/KY6rz/7/ 名前の箱(名前空間)は、第2引数無しで取り出す事が出来ます。
15.
3.依存してしまおうの巻
16.
http://jsfiddle.net/itokami1123dev/rqGda/1/ angular.module(“services",[]); ! angular.module("services"). factory("Ken",[ ! function(){ var Ken =
function(){ this.name = "kenshiro"; }; Ken.prototype = { constructor: Ken, say: function(){ return "My name is " + this.name; } }; return Ken; } ! ]); 下準備として、 services という名前のmoduleを作成します services moduleに Kenクラス を登録します。
17.
<div ng-app="services" ></div> services
moduleを起動するとrunメソッドが呼ばれます。 http://jsfiddle.net/itokami1123dev/rqGda/1/ angular.module(“services”).run([ ! ! ! “Ken", ! ! ! function( Ken ){ ! var ken = new Ken(); console.log( ken.say()); } ]); services moduleに登録した各機能は 名称文字列で取得できます。 カンマ区切りで複数指定出来ます。 module Ken 実行時に 引数に渡されます。 Ken機能を使ってる(依存してます)
18.
4.ブラウザ(DOM)に値を表示の巻
19.
angular.module("controllers"). controller("CalculatorCtrl",[ "$scope", function($scope){ ! }]); controllers moduleに ブラウザ(HTML)をコントロールする機能を登録します。 <div
ng-app="app" > <div ng-controller="CalculatorCtrl" > {{leftValue}} + {{rightValue}} = {{leftValue+rightValue}} </div> </div> http://jsfiddle.net/itokami1123dev/SZyy9/2/ $scope ng-controllerは、$scopeという表示データ格納モデルを作ります。 作成した$scopeは controller実行時に使用出来ます。
20.
angular.module("controllers"). controller("CalculatorCtrl",[ "$scope", function($scope){ $scope.leftValue = 10; $scope.rightValue
= 20; }]); <div ng-app="app" > <div ng-controller="CalculatorCtrl" > {{leftValue}} + {{rightValue}} = {{leftValue+rightValue}} </div> </div> http://jsfiddle.net/itokami1123dev/SZyy9/2/ $scopeのプロパティが 10 + 20 = 30反映されます!
21.
5.データ管理はサービスよの巻
22.
<div ng-app="app" > <div
ng-controller="CalculatorCtrl" > {{leftValue}} + {{rightValue}} = {{leftValue+rightValue}} </div> </div> angular.module("controllers"). controller("CalculatorCtrl",[ "$scope", function($scope){ $scope.xxx = 1 + 1 + ….; ! }]); データの計算式はモデルやサービスに移しましょう∼。 HTML内に計算式があったり… Controller内に計算式があったり … とっても参考になる記事:お前のAngular.jsはもうMVCではない。と言われないためのTutorial http://qiita.com/icoxfog417/items/2ac773c33a8b34288551
23.
angular.module("services"). factory(“NumDataModel",[ function(){ var NumDataModel =
function(){ this.leftValue = 10; this.rightValue = 20; }; NumDataModel.prototype = { constructor: NumDataModel, compute: function(){ return this.leftValue + this.rightValue; } }; return NumDataModel; } ]); http://jsfiddle.net/itokami1123dev/9x2Zh/3/ 足し算をするクラスを NumDataModel という名前で 登録します
24.
angular.module("services"). factory("calculatorServ",[ "NumDataModel", function(NumDataModel){ var numData =
new NumDataModel(); return { getNumData: function(){ return numData; } }; } ]); http://jsfiddle.net/itokami1123dev/9x2Zh/3/ NumDataModelクラスを管理する calculatorServ オブジェクトを登録します
25.
angular.module("controllers"). controller("CalculatorCtrl",[ "$scope","calculatorServ", function($scope, calculatorServ){ $scope.numData =
calculatorServ.getNumData(); } ]); http://jsfiddle.net/itokami1123dev/9x2Zh/3/ <div ng-app="app" > <div ng-controller="CalculatorCtrl" > {{numData.leftValue}} + {{numData.rightValue}} = {{numData.compute()}} </div> </div> これでHTMLにもControllerにも計算式が出なくなりましたね!
26.
6.データの反映は何時?の巻
27.
ところで$scopeのプロパティは いつ画面に反映するの??
28.
angular.module("services"). factory("calculatorServ",[ “NumDataModel", function(NumDataModel){ var numData =
new NumDataModel(); return { addLeft : function(){ numData.leftValue++; }, ! ! getNumData: function(){ return numData; } }; } ]); http://jsfiddle.net/itokami1123dev/92prV/2/ 左の数値データを増やすメソッドを追加して..
29.
angular.module("controllers"). controller("CalculatorCtrl",[ "$scope","calculatorServ", function($scope,calculatorServ){ $scope.numData = calculatorServ.getNumData(); $('.js-btn').on('click',function(){ calculatorServ.addLeft(); }); }]); http://jsfiddle.net/itokami1123dev/92prV/2/ <div
ng-app="app" > <button class="js-btn" >plus1</button> </div> ボタンクリックで数値を増やすメソッドを呼びます。
30.
controller("CalculatorCtrl",[ // ・・・省略・・・ $('.js-btn').on('click',function(){ calculatorServ.addLeft(); }); // ・・・省略・・・ }]); http://jsfiddle.net/itokami1123dev/92prV/2/ factory(“calculatorServ",[ //
・・・省略・・・ addLeft : function(){ numData.leftValue++; }, // ・・・省略・・・ ]); 10 + 20 = 30 plus1 押しても数値が増えない…?
31.
controller("CalculatorCtrl",[ // ・・・省略・・・ $('.js-btn').on('click',function(){ $scope.$apply(function(){ calculatorServ.addLeft(); }); }); // ・・・省略・・・ }]); http://jsfiddle.net/itokami1123dev/dK23V/ 11
+ 20 = 31 plus1 $applyを呼ぶと$scopeの中の変更を確認して画面に反映されます!
32.
<div ng-controller="CalculatorCtrl" > {{numData.leftValue}}
+ {{numData.rightValue}} = {{numData.compute()}} <button ng-click="plusBtnClicked()" >plus1</button> </div> http://jsfiddle.net/itokami1123dev/b3mTU/1/ angular.module("controllers"). controller("CalculatorCtrl",[ "$scope","calculatorServ", function($scope,calculatorServ){ // ・・・省略・・・ $scope.plusBtnClicked = function (){ calculatorServ.addLeft(); }; }]); ng-clickは自動で$applyを呼ぶのですっきり書けますよ。
33.
! 今日はココまでです! ! 今後もテストコード、描画のチューニング、共通部品 の作り方なども発表していきたいです。 ! ご清聴ありがとうございました!
Télécharger maintenant