0

我一直在按照一些教程将视图与模型绑定到主干.js,但是当我在模型上设置新属性时,我的视图并没有改变。

我目前正在从控制台工作,并将“tr”附加到“table”。设置 的新属性后,仅当我重新附加时才会出现更改。

下面的代码:

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;
}
4

1 回答 1

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;
} 

}); `
于 2012-11-02T13:17:49.993 回答