我在Backbone.js中創建了一個具有父級和多個子級視圖的應用程序。子視圖包含他們收聽並執行功能的鏈接。爲什麼Backbone.js中的第二次渲染之後事件不會觸發?
父級存儲所有子級視圖的列表。在渲染功能,是做計算自己的HTML後,它執行以下操作:
$(this.el).html(html);
for (var i = 0; i < this.views.length; i++){
$('.children', this.el).append(this.views[i].render().el);
}
答:這個問題是我在創造過程中呈現的鏈接。即在第一個渲染(從init調用的)上成功綁定到鏈接的事件。但是,由於所有後續渲染調用都會重新創建整個元素,因此新鏈接沒有綁定處理程序。這是通過@湯姆塗液解決
更增添了幾分細節,希望它有助於 –
這是一個很好的想法,但我增加了刪除上面的代碼。此外,事件不會被設置錯誤,或者它不會首先被觸發。 – chacham15