我在主幹中有一個與其關聯的視圖和模型。觀察模型變化並相應地更改其顯示區域。例如:如何在一個處理程序中處理多個主幹模型更改
var Part = Bacbone.Model.extends({
defaults:{
partId = null,
manufacturer: null,
manufactureDate: null,
type: null
}
});
var PartsCollection = Backbone.Collection.extends({
model:Part;
)};
var Car = Backbone.Model.extends({
defaults:{
carModel: null,
carName: null,
color: null,
partsCollection: null
},
//Overwite the parse method to fill partsCollection
parse: function(response){
// creating partsCollection from response and adding an attribute
// response.partsCollection = new PartsCollection();
retrun response;
}
});
我有一個類似於上面顯示的結構。在我的設計策略中,當模型更改時,我正在更改視圖內容。
所以,現在,因爲如果我在1000份與製造商「B」更換製造商「A」出的5000份的實施例。這應該修改我的觀點,因爲我在我看來正在傾聽模型改變事件。由於1000個零件的修改,1000個更改事件將被觸發。
由於製造商改變我也想改變零件模型的「manufacturerDate」屬性,如果我改變「manufacturerDate」 ATTR過這反過來又會引發另一個1000個事件。
處理在我看來,這些多事件可能不是一個好主意,這就是我的感覺。因此,可以在任何一個可以建議我解決這個問題
你這樣做完全錯了!爲什麼千變萬化?!最終用戶是否可以在一個地方看到他們的全部?我用todomvc(1000+ todos)編寫了一個非常繁重的測試,並提出了angularjs比其他例子更快的想法。我也爲這個案例開始了一個項目(Lilith.js,還沒有準備好的骨幹分支,速度很快,你仍然可以從中獲得想法!)。順便說一下,我可以推薦3種選擇:使用react.js或其他框架,根據您的需要使用另一種綁定方法或庫,不要做1000次更改! –