「アーティスト」と呼ばれる 1 つのバックボーン モデルと、「artistView」と呼ばれる 1 つのバックボーン ビューを作成しました。Chrome devtools ネットワーク タブで確認できるように、モデルを正常にフェッチしました。
ただし、フェッチはその時点で「変更」イベントを発生させませんでした。奇妙なことに、モデルを作成したときに「変更」イベントが発生しましたが、これをフェッチしたときは発生しませんでした...
fetch() メソッドで成功コールバックを使用できますが、これは最も適切な方法ではないと感じています。何か案が ?
モデルとビューの初期化:
var artist = new Artist({id: 3});
var artistView = new ArtistView({model: artist});
次に、モデルをフェッチします。
artist.fetch();
私のバックボーン ビュー クラスでは、モデルからの「変更」イベントをリッスンします。
var ArtistView = Backbone.View.extend({
initialize: function() {
this.model.on("change", this.test());
},
test: function() {
console.log(this.model.get("name"));
}
});
編集:「同期」イベントも機能していません。モデルを作成すると、「同期」イベントが発生しますが、モデルが正常にフェッチされた場合は発生しません。