際際滷

際際滷Share a Scribd company logo
Getting Started With
Knockout.js
2013/07/27 Sapporo.js
@iakio
? 墳弥席俛
? 噸粁は麼にPHPをいてます
? 悪稼看界一看顎岳.逮壊は2011定にちょっと聞ってみた殻業
書晩さないこと
? MVCとかMVVMってなに
? h苧できません
? リアクティブプログラミングってなに
? d龍あるかたは{べてみましょう
Knockout.jsとは
? Backbone.js, Ember.js, Angular.jsの肝くらいに送
佩っているのかも
? Ember.js, Angular.jsと曳べるとかなり弌さい
? Knockout.jsはフレ`ムワ`クではなくライブラ
リだ(???????
? たぶん恷も蒙羿弔覆里Dependency Tracking
Knockout.jsのはじめかた
? 巷塀のチュ`トリアルを2つくらいやる
? APIを3,4僥ぶ
? Bindingを5から10くらい僥ぶ
? とりあえずそれくらい
それでなにをやりたいの
? 云栖きたいことに鹿嶄したい
? 筝のl業が`うものは蛍けたい
尖
? JavaScriptの彜B(プロパティ)が筝されたら、
徭啜弔牧た朕も筝されるといいなあ
? ブラウザ貧でテキストボックスやドロップダウ
ンを荷恬すると徭啜弔JavaScriptの彜Bに郡
啌されるといいなあ
Getter/Setter
{{price}} this.set(`price¨, 100);
this.get(`price¨); Ember.js
<p data-bind=^text:price ̄>
</p>嗽は
<!-- ko text: price -->
<!-- /ko -->
this.price = ko.observable();
this.price(100);
this.price();
Knockout.js
{{price}} $scope.price = 100;
$scope.price; Angular.js
DEMO
Dependency Tracking
Total = price * quantity
jQuery
イベントがk伏したら、PriceとQuantityを函誼し
てTotalをきQえる
$(^#quantity,#price ̄).on(^change ̄, function () {
$(^#total ̄).text(
$(^#price ̄).text() * $(^#quantity ̄).text();
);
});
jQuery
Totalはpriceとquantityから箔められる
total: function () {
return this.get(`price¨) * this.get(`quantity¨);
}.property(`price¨, `quantity¨);
Ember.js
this.total = ko.computed(function () {
return this.price() * this.quantity();
}, this);
Knockout.js
すこしだけ碧Mみについて
? 協xされたr泣で匯指柵んでみる
? そのgに柵ばれたGetterに卆贋している
? total()仝書からト`タル麻しま`す々
? price()仝ん織肌`タル麻嶄に柵ばれた 
? quantity()仝ん織肌`タル麻嶄に柵ばれた 
? price(100)仝よ`しtotal()壅麻しちゃうぞ`々
this.total = ko.computed(function () {
return this.price() * this.quantity();
}, this);
Knockout.js
こういう栽は
? 兜指にflagが里世priceとquantityが柵ばれな
いので卆贋vSがhされない
this.total = ko.computed(function () {
if (this.flag) {
return this.price() * this.quantity();
} else { ´ }
}, this);
Knockout.js
こうする
? 兜指、priceとquantityの卆贋vSがhされないが、
flagはhされている
? flagが寔になるとtotalが柵ばれ、priceとquantityの
卆贋vSがhされる
this.flag = ko.observable();
this.total = ko.computed(function () {
if (this.flag()) {
return this.price() * this.quantity();
} else { ´ }
}, this);
Knockout.js
深え圭を笋┐
? 箭えばペ`ジャやフィルタ
? 仝肝へ々を兀されたら、ペ`ジ桑催を+1する
? ペ`ジ桑催に卆贋して
? Fペ`ジに燕幣するアイテムが笋錣
? 仝念へ々仝肝へ々ボタンを燕幣するかが笋錣
? その麿弼?が徭啜弔笋錣
措いところ
? 弌さい。えることが富ない
? ViewModelはgなるObject
? ModelとかControllerとかいう冱~がでてこない
? セレクタから盾慧される
? 云栖きたかったことに鹿嶄できる
? Tutorialがよくできている
廣吭泣
? 畠何秘りではない
? AjaxしたければjQueryを聞う
? Routerが駅勣であればsammy.jsを聞う
? その麿Pluginなどあるが、そこまでやるか
? 謹匯のような}jなdependency
? メソッド嶷}して柵ばれないよう廣吭
? ViewModelの景寄晒
? 聞いどころをxぶ
? SEOってなんだったっけ
? Progressive Enhancement?
Resources
? http://knockoutjs.com
? http://knockmeout.net
? http://blog.stevensanderson.com
Ad

Recommended

永堰永で安艶恢皆看界一艶岳をg廾してみてわかったこと
永堰永で安艶恢皆看界一艶岳をg廾してみてわかったこと
ksimoji
?
干温厩温皆界姻庄沿岳で竃栖る、あんなことこんなこと
干温厩温皆界姻庄沿岳で竃栖る、あんなことこんなこと
Mayu Kimura
?
JavaScript 冩俐
JavaScript 冩俐
Yuki Ishikawa
?
Node.jsて?サ`ハ?フ?ロク?ラマ テ?ヒ?ュ`しよう
Node.jsて?サ`ハ?フ?ロク?ラマ テ?ヒ?ュ`しよう
Yuusuke Takeuchi
?
Concurrent Programming in JavaScript
Concurrent Programming in JavaScript
yjono Seino
?
Concurrent Programm in JavaScript
Concurrent Programm in JavaScript
yjono Seino
?
Ember コミュニティとわたし
Ember コミュニティとわたし
Ryunosuke SATO
?
粥稼乙顎鉛温姻干皆2でつまづいたこと
粥稼乙顎鉛温姻干皆2でつまづいたこと
Takehiro Takahashi
?
Nodeとフロントエンド ? 岑っておかなければならない、書と隆栖の ?
Nodeとフロントエンド ? 岑っておかなければならない、書と隆栖の ?
Kohei Asai
?
クライアントサイド逮温厩温壊界姻庄沿岳酒g府初
クライアントサイド逮温厩温壊界姻庄沿岳酒g府初
しくみu恬侭
?
Webデザインの嫌をレげる、jQuery‐コ`ドを峰する/ 枠伏艮梳 唸初
Webデザインの嫌をレげる、jQuery‐コ`ドを峰する/ 枠伏艮梳 唸初
schoowebcampus
?
干温厩温皆界姻庄沿岳ユ`ティリティライブラリの府初
干温厩温皆界姻庄沿岳ユ`ティリティライブラリの府初
Yusuke Hirao
?
意霞沿艶皆界姻庄沿岳への秘笥
意霞沿艶皆界姻庄沿岳への秘笥
Sunao Tomita
?
寄号庁な干温厩温皆界姻庄沿岳蝕kの三
寄号庁な干温厩温皆界姻庄沿岳蝕kの三
terurou
?
仝仟しい々を伏み竃すための安艶恢アプリ蝕kとその巓x
仝仟しい々を伏み竃すための安艶恢アプリ蝕kとその巓x
Yusuke Wada
?
MF GeeksNight pplogの
MF GeeksNight pplogの
Naoto Koshikawa
?
干温厩温壊界姻庄沿岳のあれやこれやをまとめてh苧してみる
干温厩温壊界姻庄沿岳のあれやこれやをまとめてh苧してみる
Shunji Konishi
?
Rubyで恬るクロ`ラ` Ruby crawler
Rubyで恬るクロ`ラ` Ruby crawler
Takuro Sasaki
?
意霞沿艶皆界姻庄沿岳階秘壇
意霞沿艶皆界姻庄沿岳階秘壇
Narami Kiyokura
?
Non blocking and asynchronous
Non blocking and asynchronous
Norio Kobota
?
はじめよう TypeScript - 秘Tからg樹まで - 殆の JavaScript とはさようなら!
はじめよう TypeScript - 秘Tからg樹まで - 殆の JavaScript とはさようなら!
Jun-ichi Sakamoto
?
むずかしくないJavaScriptのやさしい jQueryからの肝のステップ #ndsmeetup8
むずかしくないJavaScriptのやさしい jQueryからの肝のステップ #ndsmeetup8
civic Sasaki
?
モダン干温厩温皆界姻庄沿岳桟廠更廏匯i朕
モダン干温厩温皆界姻庄沿岳桟廠更廏匯i朕
寄 弌}
?
ビルド岼繁の劾は壼い
ビルド岼繁の劾は壼い
Masashi MATSUI
?
頭返gJS on Rails
頭返gJS on Rails
Ryunosuke SATO
?
悪稼看界一看顎岳喝エンジニア茶膿氏20131120
悪稼看界一看顎岳喝エンジニア茶膿氏20131120
エンジニア茶氏 エスキュ`ビズム
?
Knockout を喘いた Firefox OS アプリケ`ションの_k
Knockout を喘いた Firefox OS アプリケ`ションの_k
Kentaro Iizuka
?
Knockout.js を旋喘したインタラクティブ web アプリケ`ション_k
Knockout.js を旋喘したインタラクティブ web アプリケ`ション_k
Daizen Ikehara
?
How do you like knockout?
How do you like knockout?
Narami Kiyokura
?

More Related Content

What's hot (18)

Nodeとフロントエンド ? 岑っておかなければならない、書と隆栖の ?
Nodeとフロントエンド ? 岑っておかなければならない、書と隆栖の ?
Kohei Asai
?
クライアントサイド逮温厩温壊界姻庄沿岳酒g府初
クライアントサイド逮温厩温壊界姻庄沿岳酒g府初
しくみu恬侭
?
Webデザインの嫌をレげる、jQuery‐コ`ドを峰する/ 枠伏艮梳 唸初
Webデザインの嫌をレげる、jQuery‐コ`ドを峰する/ 枠伏艮梳 唸初
schoowebcampus
?
干温厩温皆界姻庄沿岳ユ`ティリティライブラリの府初
干温厩温皆界姻庄沿岳ユ`ティリティライブラリの府初
Yusuke Hirao
?
意霞沿艶皆界姻庄沿岳への秘笥
意霞沿艶皆界姻庄沿岳への秘笥
Sunao Tomita
?
寄号庁な干温厩温皆界姻庄沿岳蝕kの三
寄号庁な干温厩温皆界姻庄沿岳蝕kの三
terurou
?
仝仟しい々を伏み竃すための安艶恢アプリ蝕kとその巓x
仝仟しい々を伏み竃すための安艶恢アプリ蝕kとその巓x
Yusuke Wada
?
MF GeeksNight pplogの
MF GeeksNight pplogの
Naoto Koshikawa
?
干温厩温壊界姻庄沿岳のあれやこれやをまとめてh苧してみる
干温厩温壊界姻庄沿岳のあれやこれやをまとめてh苧してみる
Shunji Konishi
?
Rubyで恬るクロ`ラ` Ruby crawler
Rubyで恬るクロ`ラ` Ruby crawler
Takuro Sasaki
?
意霞沿艶皆界姻庄沿岳階秘壇
意霞沿艶皆界姻庄沿岳階秘壇
Narami Kiyokura
?
Non blocking and asynchronous
Non blocking and asynchronous
Norio Kobota
?
はじめよう TypeScript - 秘Tからg樹まで - 殆の JavaScript とはさようなら!
はじめよう TypeScript - 秘Tからg樹まで - 殆の JavaScript とはさようなら!
Jun-ichi Sakamoto
?
むずかしくないJavaScriptのやさしい jQueryからの肝のステップ #ndsmeetup8
むずかしくないJavaScriptのやさしい jQueryからの肝のステップ #ndsmeetup8
civic Sasaki
?
モダン干温厩温皆界姻庄沿岳桟廠更廏匯i朕
モダン干温厩温皆界姻庄沿岳桟廠更廏匯i朕
寄 弌}
?
ビルド岼繁の劾は壼い
ビルド岼繁の劾は壼い
Masashi MATSUI
?
頭返gJS on Rails
頭返gJS on Rails
Ryunosuke SATO
?
Nodeとフロントエンド ? 岑っておかなければならない、書と隆栖の ?
Nodeとフロントエンド ? 岑っておかなければならない、書と隆栖の ?
Kohei Asai
?
クライアントサイド逮温厩温壊界姻庄沿岳酒g府初
クライアントサイド逮温厩温壊界姻庄沿岳酒g府初
しくみu恬侭
?
Webデザインの嫌をレげる、jQuery‐コ`ドを峰する/ 枠伏艮梳 唸初
Webデザインの嫌をレげる、jQuery‐コ`ドを峰する/ 枠伏艮梳 唸初
schoowebcampus
?
干温厩温皆界姻庄沿岳ユ`ティリティライブラリの府初
干温厩温皆界姻庄沿岳ユ`ティリティライブラリの府初
Yusuke Hirao
?
意霞沿艶皆界姻庄沿岳への秘笥
意霞沿艶皆界姻庄沿岳への秘笥
Sunao Tomita
?
寄号庁な干温厩温皆界姻庄沿岳蝕kの三
寄号庁な干温厩温皆界姻庄沿岳蝕kの三
terurou
?
仝仟しい々を伏み竃すための安艶恢アプリ蝕kとその巓x
仝仟しい々を伏み竃すための安艶恢アプリ蝕kとその巓x
Yusuke Wada
?
干温厩温壊界姻庄沿岳のあれやこれやをまとめてh苧してみる
干温厩温壊界姻庄沿岳のあれやこれやをまとめてh苧してみる
Shunji Konishi
?
Rubyで恬るクロ`ラ` Ruby crawler
Rubyで恬るクロ`ラ` Ruby crawler
Takuro Sasaki
?
意霞沿艶皆界姻庄沿岳階秘壇
意霞沿艶皆界姻庄沿岳階秘壇
Narami Kiyokura
?
Non blocking and asynchronous
Non blocking and asynchronous
Norio Kobota
?
はじめよう TypeScript - 秘Tからg樹まで - 殆の JavaScript とはさようなら!
はじめよう TypeScript - 秘Tからg樹まで - 殆の JavaScript とはさようなら!
Jun-ichi Sakamoto
?
むずかしくないJavaScriptのやさしい jQueryからの肝のステップ #ndsmeetup8
むずかしくないJavaScriptのやさしい jQueryからの肝のステップ #ndsmeetup8
civic Sasaki
?
モダン干温厩温皆界姻庄沿岳桟廠更廏匯i朕
モダン干温厩温皆界姻庄沿岳桟廠更廏匯i朕
寄 弌}
?
ビルド岼繁の劾は壼い
ビルド岼繁の劾は壼い
Masashi MATSUI
?

Similar to Getting start with knockout.js (7)

悪稼看界一看顎岳喝エンジニア茶膿氏20131120
悪稼看界一看顎岳喝エンジニア茶膿氏20131120
エンジニア茶氏 エスキュ`ビズム
?
Knockout を喘いた Firefox OS アプリケ`ションの_k
Knockout を喘いた Firefox OS アプリケ`ションの_k
Kentaro Iizuka
?
Knockout.js を旋喘したインタラクティブ web アプリケ`ション_k
Knockout.js を旋喘したインタラクティブ web アプリケ`ション_k
Daizen Ikehara
?
How do you like knockout?
How do you like knockout?
Narami Kiyokura
?
恬って蛍かる悪稼看界一看顎岳干皆葵粥晦珂11埖
恬って蛍かる悪稼看界一看顎岳干皆葵粥晦珂11埖
Takuya Ueda
?
粥稼乙顎鉛温姻干皆秘壇
粥稼乙顎鉛温姻干皆秘壇
Kenji Shirane
?
Knockout を喘いた Firefox OS アプリケ`ションの_k
Knockout を喘いた Firefox OS アプリケ`ションの_k
Kentaro Iizuka
?
Knockout.js を旋喘したインタラクティブ web アプリケ`ション_k
Knockout.js を旋喘したインタラクティブ web アプリケ`ション_k
Daizen Ikehara
?
恬って蛍かる悪稼看界一看顎岳干皆葵粥晦珂11埖
恬って蛍かる悪稼看界一看顎岳干皆葵粥晦珂11埖
Takuya Ueda
?
粥稼乙顎鉛温姻干皆秘壇
粥稼乙顎鉛温姻干皆秘壇
Kenji Shirane
?
Ad

More from Akio Ishida (12)

永姻看沿鞄艶界霞を聞ったユニットテスト
永姻看沿鞄艶界霞を聞ったユニットテスト
Akio Ishida
?
よりよい永堰永雨稼庄岳のg佩圭隈を箔めて
よりよい永堰永雨稼庄岳のg佩圭隈を箔めて
Akio Ishida
?
phpspecで僥ぶLondon School TDD
phpspecで僥ぶLondon School TDD
Akio Ishida
?
永看壊岳乙姻艶皆河晦の袈賽佑氾屠崙埃
永看壊岳乙姻艶皆河晦の袈賽佑氾屠崙埃
Akio Ishida
?
掛鴛禽を巓指させてみよう
掛鴛禽を巓指させてみよう
Akio Ishida
?
Local php-100828 2
Local php-100828 2
Akio Ishida
?
Rubysapporo Stringsearch
Rubysapporo Stringsearch
Akio Ishida
?
聞いこなそう赫雨遺
聞いこなそう赫雨遺
Akio Ishida
?
岳艶恰岳壊艶温姻界鞄喝逮温で畠猟碧
岳艶恰岳壊艶温姻界鞄喝逮温で畠猟碧
Akio Ishida
?
永看壊岳乙姻艶皆河晦で僥ぶ京看霞艶姻-珂看看姻艶-堰看姻壊沿看看鉛アルゴリズム
永看壊岳乙姻艶皆河晦で僥ぶ京看霞艶姻-珂看看姻艶-堰看姻壊沿看看鉛アルゴリズム
Akio Ishida
?
Ruby Postgres
Ruby Postgres
Akio Ishida
?
永姻看沿鞄艶界霞を聞ったユニットテスト
永姻看沿鞄艶界霞を聞ったユニットテスト
Akio Ishida
?
よりよい永堰永雨稼庄岳のg佩圭隈を箔めて
よりよい永堰永雨稼庄岳のg佩圭隈を箔めて
Akio Ishida
?
phpspecで僥ぶLondon School TDD
phpspecで僥ぶLondon School TDD
Akio Ishida
?
永看壊岳乙姻艶皆河晦の袈賽佑氾屠崙埃
永看壊岳乙姻艶皆河晦の袈賽佑氾屠崙埃
Akio Ishida
?
掛鴛禽を巓指させてみよう
掛鴛禽を巓指させてみよう
Akio Ishida
?
Rubysapporo Stringsearch
Rubysapporo Stringsearch
Akio Ishida
?
聞いこなそう赫雨遺
聞いこなそう赫雨遺
Akio Ishida
?
岳艶恰岳壊艶温姻界鞄喝逮温で畠猟碧
岳艶恰岳壊艶温姻界鞄喝逮温で畠猟碧
Akio Ishida
?
永看壊岳乙姻艶皆河晦で僥ぶ京看霞艶姻-珂看看姻艶-堰看姻壊沿看看鉛アルゴリズム
永看壊岳乙姻艶皆河晦で僥ぶ京看霞艶姻-珂看看姻艶-堰看姻壊沿看看鉛アルゴリズム
Akio Ishida
?
Ad

Getting start with knockout.js