我有一個奇怪的錯誤,其中函數(鈦合金,有點同質)返回空,而fetch方法返回模型列表。伊夫檢查了一遍又一遍,我試圖把其中函數的獲取方法的成功回調,但它仍然會導致一個無法解決的錯誤Backbone在獲取回調中返回空
Alloy.Collections.favorites.fetch({
success: function(collection) {
console.log(JSON.stringify(collection));
console.log(self.get('id'));
var favorite = collection.where({
jobId: self.get('id')
});
console.log(JSON.stringify(favorite));
});
以上輸出是:
[{"jobId":5162179,"dateAdded":1414590144,"candidateId":99,"id":19},{"jobId":5161302,"dateAdded":1414588983,"candidateId":99,"id":17},{"jobId":5161437,"dateAdded":1414588785,"candidateId":99,"id":16}]
5161437
[]
哪有上述事情發生?怎麼能重現這個?該集合是否被佔用或者是鈦合金中的一個錯誤?此過程是視圖(視圖A)上數據綁定的一部分,此確切代碼適用於不同部分,唯一不同之處在於視圖A不直接受集合中的更改影響。
任何幫助?這甚至有可能與骨幹?我不能讓我的頭圍繞這個
嘗試'console.log(最喜歡);'即。不會將其字符串化 – benhowdle89 2014-10-29 14:12:37
當您通過'JSON.stringify'對整個集合進行序列化時,會隱式調用['toJSON'](http://backbonejs.org/#Collection-toJSON)方法,將集合轉換爲JSONable數組。但是當你嘗試序列化'collection.where'的結果時,這會導致錯誤,因爲['collection.where'](http://backbonejs.org/#Collection-where)返回**不能成爲模型的數組**直接序列化爲JSON。 – hindmost 2014-10-29 15:04:18