我在初始頁面加載時,在我的主幹應用中引導了所有重要數據。這主要是收藏品。我被困在一個問題上,我打電話給collection.get(id)
,但它返回undefined
,儘管我知道一個模型存在傳入ID的ID
屬性。使用頁面加載數據引導Backbone集合的正確方法
然後,當我檢查控制檯中的集合時,我注意到_byId
陣列應該包含我的模型ID的數組是空的。
您可以從控制檯打印出下面顯示的集合確實有模型,並且這些模型具有ID屬性。
window.campaigns
child
_byCid: Object
_byId: Object
__proto__: Object
_callbacks: Object
length: 32
models: Array[32]
models: Array[32]
0: child
_callbacks: Object
_escapedAttributes: Object
_pending: Object
_previousAttributes: Object
_silent: Object
attributes: Object
DateCreated: "23/05/2012"
DateScheduled: ""
DateSent: ""
Description: null
From: null
ID: 1
IsAllowed: false
Message: null
Name: "Some name"
__proto__: Object
changed: Object
cid: "c0"
collection: child
__proto__: ctor
1: child
2: child
3: child
4: child
5: child
length: 6
__proto__: Array[0]
__proto__: ctor
我使用在頁面加載時寫入我的索引頁的JSON對象數組來引導數據。我認爲這就是你所要做的,而Backbone會假設一個名爲'ID'的屬性是模型的ID,並且會相應地解釋。
我錯在想這個/我正確地做這件事嗎?
感謝。史詩般的答案!如果只有我總是得到一個全面的答案。它確實解決了我的問題,我錯誤地認爲骨幹會採取一種常規方法,任何形式的身份證都可以工作,但顯然不是這樣! – jcvandan