しばやん雑記

Azure とメイドさんが大好きなフリーランスのプログラマーのブログ

Knockout.js

Knockout.js の paging extender を使ってページングを実装する

Knockout.js で項目のページングを行う方法として、公式サンプルにある simpleGrid を使う方法があります。Knockout : Paged grid名前からわかるように、ページング用と言うよりも簡単に GridView を作るための ViewModel になります。*1もうちょっと汎用的…

Knockout.js 3.2.0 がリリースされたので新機能について一通り調べてみた

最近はあまり Knockout.js についてブログを書いてませんが、超特大なアップデートを含む 3.2.0 がリリースされたので、新機能について調べておきました。Knockout 3.2.0 released - Steve Sanderson’s blog - As seen on YouTube™それぞれの新機能について…

Knockout.js と ASP.NET MVC の組み合わせ時にモデルバインディングが腐る件

今日も Knockout.js を使って ASP.NET MVC に POST するようなコードを書いていたのですが、モデルバインダが意図したとおりに値をバインドしてくれない時がありました。まずは ASP.NET MVC 側のコードを見ていきましょう。難しいことはしてません。 public …

Knockout.js の if と visible は似ているようで違うので注意

Knockout.js の if と visible は見た目的には要素の表示・非表示を切り替えるので大差ないですが、DOM 的には大きく仕組みが異なっています。簡単な例で挙動の差を見ていきます。 <span data-bind="if: flag">ほげほげ</span> ↓ タグの中身が空っぽの状態になる <span></span> if の場合は flag が true に…

Knockout.js の Mapping プラグインを使ったら凄く捗った件

めっちゃ久しぶりに Knockout.js の話です。最近、仕事で再び使い始めたので Tips 的なものが貯まってきたら、こうやってちょいちょい書いていきます。Knockout : HomeASP.NET MVC 側で持っているモデルをそのまま JSON にして Knockout.js に流し込みたかっ…

knockout.js 2.3.0 と 3.0.0 ベータがリリースされていました

最近、動きがなかった knockout.js ですが、昨日にバージョン 2.3.0 と 3.0.0 ベータが公開されました。Knockout : Downloads公式サイトのダウンロードページが分かりやすくなった気がします。作者である Steven Sanderson 氏のブログに新機能や更新内容がい…

インテリセンスの新しい knockout.js サポート

今日、Visual Studio 2012 を使って久しぶりに knockout.js のバインディングを書いていたら、data-bind 属性の中でインテリセンスが効くことに気が付きました。例えばバインディングを定義しようとして、data-bind 属性を入力したら以下のような感じになり…

knockout.js の最近の動向

Knockout : Home気が付いたら 2.2.1 までバージョンが上がってました。2.2.1 に関してはリリースノートが上がっていないようなので、2.2.0 の情報を追いかけます。Knockout 2.2.0 released - Steve Sanderson’s blog - As seen on YouTube™大きなところでは …

knockout.js 2.1.0 がリリースされました

Knockout 2.1.0 is released! What's new? See http://t.co/cHl1uj9S for a rundown. Also a few remarks from me at http://t.co/0ySMCWOa— Steve Sanderson (@stevensanderson) 2012年5月9日 Knockout 2.1.0 releasedKnockout 2.1 is out - Knock Me Outさ…

knockout.js でカスタムバインディングを作成する

バインディングは text とか value みたいに data-bind 属性の内部で指定する奴です。knockout.js ではこのバインディングを自由に拡張できるようになっています。バインディングは ko.bindingHandlers に内蔵のものもすべて含まれているので、ここに追加し…

knockout.js の注意すべき点

相変わらず knockout.js でクライアントサイドコードを全力で書いてる男です。最近、ちょっとした点でデバッグに時間をかけてしまったり、無駄なコードを書いてしまうことがあったので忘れないためにメモしておきます。 値の取得、設定は関数呼び出し もう基…

knockout.js でテンプレートを動的に切り替える

こんばんは、最近は knockout.js のことばかり弄っていて、そろそろ ASP.NET MVC のことも書けよと言われそうですが、MVC 4 には knockout.js 標準で入ってるし問題ないです(免罪符相変わらずお仕事で knockout.js 2.0.0 を使いまくっているので、やたらと…

knockout.js 2.0.0 がリリースされたので試してみた

1.3.0 のベータかと思ったら 2.0.0 の RC がリリースされていましたが、ついに 2.0.0 の正式版がリリースされたようです。NuGet Gallery | knockoutjs 2.3.0NuGet でも 2.0.0 が配布されているので、急いで以下のコマンドを Package Manager Console に打ち…

knockout.js の基本と 1.3.0 の新機能

C# Advent Calendar 2011 で書いた knockout.js の記事が割と好評なので、調子に乗って knockout.js の解説を書いてしまおうという作戦です。何故 knockout.js かというのは、今仕事で knockout.js を全力で使っているという非常にシンプルな理由です。今回 …

ASP.NET MVC 4 で knockout.js を活用する

これは C# Advent Calendar 2011 用の記事です。 皆さんこんばんは、もうちょっとで今年一年終わりですね。まあ、そんなことはどうでもいいとして Ever17 の箱版プレイしましょうね。さて、今回は C# Advent Calendar と言いながら JavaScript かよ!という…