たとえばevents
、次の形式のビューでプロパティを定義できます。ここで、collapse は、ビューのプロパティとして定義された関数になります。次に、このコールバック関数に ajax リクエスト コードを記述します。{"event selector": "callback"}
{"click .collapse": "collapse"}
また、何かが欠けていない限り、「ビューとモデルをボタンにバインドする」というのは、正しいバックボーンのようには聞こえません。代わりに、ビューの 1 つのインスタンスに関連付けられたモデルの 1 つのインスタンスを考える必要があります。モデル インスタンスの属性が変更されるたびに、モデルchange
イベントがトリガーされます。ビュー関数をこのイベントにバインドして、モデルの変更がビューに反映されるようにすることができます。ここに簡単な例があります
var Book = Backbone.Model.extend({
// ...
});
var BookView = Backbone.View.extend({
initialize: function () {
this.model.bind('change', this.render, this);
},
render: function () {
// here, make changes to the dom as per changes in model
}
});
モデルをビュー インスタンスに関連付けるには、新しいビュー オブジェクトをインスタンス化するときにそれを渡すことができます。
var book = new Book({
title: "A great book"
});
var view = new BookView({model: book});
view.model.set('author', 'AGreatAuthor');
set 関数呼び出しは change イベントを発生させ、ビューの render 関数を呼び出します。
完全な例については、注釈付きの Todos アプリの例のソースを参照してください。