私は見つけたjavascript sample codeの背骨をたどっています。私はほとんど同じコードを持っているので、サンプルと背骨の現在のバージョンは少し違うようです。アップアップは、私の呼び出しの1つがproxedになっていないです。スパインがイベントハンドラをプロキシしていません
exports.UrlsList = Spine.Controller.create({
elements: {
".items": "items",
"form": "form",
"input": "input"
},
events: {
"submit form": "create"
},
proxied: ["render", "addAll", "addOne"],
init: function(){
Url.bind("create", this.addOne);
Url.bind("refresh", this.addAll);
},
addOne: function(url){
var view = Urls.init({item: url}); // The is another controller
this.items.append(view.render().el); //This is where the error occurs
},
addAll: function(){
Url.each(this.addOne);
},
create: function(e){
e.preventDefault();
var value = this.input.val();
if (value) {
Url.create({content: value});
}
this.input.val("");
this.input.focus();
}
});
addOne関数が呼び出されると、現在のクラスではなく、Urlのコンテキストで呼び出されます。 addOneがプロキシリストにあるにもかかわらず、何もプロキシしていないようです。何か案は?