1

一切运行良好,但是当我向集合中添加新项目时,视图不会更新集合以显示它。这是代码

App.Views.Contacts = Backbone.View.extend({
    tagName: 'tbody',

    initialize: function(){
        this.collection.on('sync',this.addOne,this);
    },

    render: function(){

        this.collection.each(this.addOne,this);
        return this;
    },

    addOne: function(contact){
        var contactView = new App.Views.Contact({model:contact});
        this.$el.append(contactView.render().el); 
    } 

});

我不知道,为什么同步不起作用

4

1 回答 1

0

我猜你有在事件上渲染所有项目并在sync事件上渲染一个add。像这样:

initialize: function(){
  this.listenTo(this.collection, 'sync', this.render);
  this.listenTo(this.collection, 'add', this.addOne);
},
于 2013-10-06T19:18:47.963 回答