0
我定義我的app.js兩個集合文件是這樣的:骨幹視圖使用多個集合
this.shoppingCartFullPageView.collections = {
supplyCategoriesCollection: this.supplyCategoriesCollection,
orderedSuppliesCollection: this.orderedSuppliesCollection
}
這裏是我的看法代碼:
var ShoppingCartFullPageView = Backbone.View.extend ({
initialize: function() {
this.listenTo(this.collection, "reset", this.render);
},
render: function() {
$(this.el).html(new ShoppingCartListView ({
collection: this.collections.supplyCategoriesCollection
}).render().el);
$(this.el).append(new OrderedSupplyListView ({
collection: this.collections.orderedSuppliesCollection
}).render().el);
return this;
}
});
我有一個骨幹觀點渲染每個都有自己的集合的子視圖。這兩個子視圖呈現正確。問題在於初始化函數。 上面的代碼在兩個集合上偵聽「重置」。我只想在其中一個集合上「聽取」「重置」。當我嘗試「this.listenTo(this.collections.supplyCategoriesCollection,」reset「,this.render);」我收到一個未定義的錯誤。
ShoppingCartListView已在偵聽到集合正確。問題是ShoppingCartFullPageView正在監聽this.collections.supplyCategoriesCollection和this.collections.orderedSuppliesCollection。我希望它只聽前者。 – Sizzles27
@ Sizzles27我更新了我的答案。未定義的錯誤可能是因爲你還沒有初始化你的集合。 – cclerville