2012-11-02 2 views
0

뷰를 backbone.js의 모델과 바인딩하기 위해 튜토리얼을 따라 왔지만 모델에 새 속성을 설정할 때 뷰가 변경되지 않습니다.Backbone.js -보기가 아닙니다.

저는 현재 콘솔 형태로 작업 중이며 "tr"을 "테이블"에 추가하고 있습니다. 의 새 속성을 설정하면 변경 사항이 다시 추가 될 때만 나타납니다. 아래

코드 :`

window.ListView = Backbone.View.extend({ 

tagName:"tr", 
template: _.template("<td><%= first%></td><td><%= last%></td><td><%= sex%></td><td><%= height></td><td><%= weight%></td>"), 



initiliaze: function(){ 
    _.bindAll(this, 'render'); 
    this.model.bind('change', this.render, this); 
    this.template = template.html; 


}, 

render:function() { 
    this.$el.html(this.template(this.model.toJSON())); 
    return this; 
} 
+1

잘 작동은 그래서 오타 initiliaze'is? 그렇지 않은 경우 대신 '초기화'로 바꾸십시오. – nikoshr

+0

'initiliaze'는 오타가 발생했다고 생각하지 않습니다. 실행 중이라면'템플릿이 정의되지 않았습니다 '라는 오류가 발생합니다. – Cyclone

답변

0

이 라인 this.template = template.html를 제거하고 코드가

window.ListView = Backbone.View.extend({ 

tagName:"tr", 

template: _.template("<td><%= first%></td><td><%= last%></td><td><%= sex%></td><td><%= height></td><td><%= weight%></td>"), 

initiliaze: function(){ 

    _.bindAll(this, 'render'); 
    this.model.bind('change', this.render, this); 
    //this.template = template.html; 
}, 

render:function() { 

    this.$el.html(this.template(this.model.toJSON())); 
    return this; 
} 

}); ` 
관련 문제