Backbone.jsからいくつかのビューを見ましたが、どのモデルがビューにバインドされているかがどの時点で宣言されているのかわかりませんか?
たとえば、ここでは、ビューはどのモデルがどのモデルであるかを定義しthis.model
ますか?
https://github.com/addyosmani/todomvc/blob/gh-pages/dependency-examples/backbone_require/js/views/todos.js
Backbone.jsからいくつかのビューを見ましたが、どのモデルがビューにバインドされているかがどの時点で宣言されているのかわかりませんか?
たとえば、ここでは、ビューはどのモデルがどのモデルであるかを定義しthis.model
ますか?
https://github.com/addyosmani/todomvc/blob/gh-pages/dependency-examples/backbone_require/js/views/todos.js
オプション引数のプロパティをビューのコンストラクターに渡すとmodel
、Backboneは自動的に次のように設定しますview.model
。
var someModel = new Model();
var view = new View({model:someModel});
console.log(view.model === someModel); // -> true
この機能はここに記載されています。
新しいビューを作成するときに、渡したオプション(ビューに既に存在するデフォルトのオプションにマージされた後)は、後で参照できるようにthis.optionsとしてビューに添付されます。渡された場合、ビューに直接アタッチされるいくつかの特別なオプションがあります:モデル、コレクション、el、id、className、tagName、および属性。
Todolistの例では、モデルはapp.jsの75行目に設定されています。
addOne: function( todo ) {
var view = new TodoView({ model: todo });
$('#todo-list').append( view.render().el );
},