2013-10-06 56 views
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); 
    } 

});

我不知道,爲什麼同步不工作

+0

你可以做一個jsfiddle,這樣我們可以很容易地調試你的問題? –

+0

http://jsfiddle.net/y6LQL/ – user2071763

+0

我想你應該聽'add'事件,而不是在這裏同步。 –

回答

0

我猜你有豪渲染上sync事件的所有項目,並呈現一個上add事件。像這樣:

initialize: function(){ 
    this.listenTo(this.collection, 'sync', this.render); 
    this.listenTo(this.collection, 'add', this.addOne); 
}, 
+0

不,這不是working.Ятодолгоискалинемогунайти... – user2071763

+0

Аимойпримернеработает,потому,чтояполучаювседанныессервера...вJSONформате – user2071763

+0

似乎沒有工作 – pushplaybang