Backbone.jsで、DOMとそのイベントをすっきり使ってみる。
テキストボックスのキー入力をキャプチャして、
コンソールに出しつつ、サーバにポストしてみる
(このGistにサーバのコードは入れていないので、エラーが出る)。
また、Nextボタンを押すと、タイトルが変わる。
Backboneは、DOM操作をしやすくするための軽量ライブラリ。
AngularのようなMVCフレームワークでなく、
ミニマルなツールを目指しているので、
他のライブラリと衝突せず、簡単に組み合わせられる。
ユーティリティライブラリのunderscore.jsに依存していて、
こちらもシンプルで便利。
JSのイベントは、昔ながらにjQueryでゴリゴリ処理すると
かなりごちゃごちゃするが、BackboneのModelやViewを使うと
すっきりさせやすい。
また、ModelとそのCollectionは、
RESTなサーバと連携して、データベースとのやり取りもしやすい。
今回も、Modelのsave()
を使った。
jQueryの低レベルなAJAX関数よりかなりわかりやすい。
今回、Modelとしては、超簡単に
srcのカスタム属性だけを持たせた。
BackboneのModelオブジェクトは属性の変更を監視できる。
(今回はその属性を変更せずに、オブジェクトを
まるごと入れ替えているので、通知が飛ばないが)
ViewへはそのModelを対応付けて、
ボタンのクリックと、テキストボックスへのキー入力を監視している。