0
정말 지금 내 머리를 긁고 있습니다. 다음 backbone.js 코드의 문제점은 무엇입니까? 그것은 "catch되지 않은 오류 : 방법"불평을 계속 정의는 "backbone.js 존재하지 않습니다 : 1291"을잡히지 않은 오류 : "정의되지 않은"방법이 존재하지 않습니다. backbone.js : 1291
실패 코드는 여기에 있습니다 : 당신은 어딘가에 콜백을 추가하는 것을 잊었다 http://jsfiddle.net/toeinriver/ntK7r/19/
(function($){
var Person = Backbone.Model.extend({
defaults:{
age: 0,
name: "tom"
}
});
var People = Backbone.Collection.extend({
model: Person});
ListView = Backbone.View.extend({
el: $("body"),
events: {
"click button#btn": this.addItem
},
initialize: function(){
this.count = 0;
_.bindAll(this, "render", "appendItem","addItem");
this.collection = new People();
this.collection.bind("add", this.appendItem);
this.counter = 0;
this.render();
},
render: function(){
var self = this;
$(this.el).append("<button id='btn'>Press me</button>");
$(this.el).append("<ul></ul>");
_(this.collection.models).each(function(item){
self.appendItem(item);
this.count+=1;
},this);
},
appendItem: function(item){
$("ul", this.el).append("<li>" + item.get("name") +" at" + item.get("age") + "</li>");
},
addItem: function(){
var p = new Person();
p.set({age:this.count});
this.count += 1;
this.collection.add(p);
}
});
var listView = new ListView();
})(jQuery);
. 1291 행의 backbone.js를 열고 전화를 걸려는 것을 확인하십시오. –
JSFiddle을 실행하려고 할 때'TypeError : Mac의 Chrome에서 'undefined의'bind '속성을 읽을 수 없습니다. 어떤 브라우저에서 실행하고 있습니까? – rjsvaljean
@rjsvaljean, 압축되지 않은 backbone.js를 사용하여 오류가 발생했습니다. 압축 된 버전은 당신이 말한 오류를 줄 것입니다. – lkahtz