1
我有這個漂亮的函數遍歷集合中的屬性和值的模型。如果它發現它的值返回true。Backbone集合通過模型屬性搜索 - 正確地完成
看過大量的文檔之後,我仍然對如何正確遍歷 集合以及如何搜索它感到困惑。由於underscorejs(在我的情況lodash)掛到主幹我做遍歷與。每個
收藏我並沒有把一個else if (model.get(attribute)===value)
後,因爲它會在整個集合穿越之前返回false 。回調函數聽起來像不必要的複雜化 - 但也許我錯了(我幾個月前開始與JS)
我會很高興提示和/或更好的解決方案;-)與explonation。 在此先感謝。
我用requirejs,這就是我爲什麼通過_,Bacbkone ...
這裏是收藏的樣子:
function (_, Backbone, AppModels) {
var QueriesCollection = Backbone.Collection.extend({
model : AppModels.QueryModel,
search: function (attribute, value) {
var found = false;
this.each(function (model) {
if (model.get(attribute)===value) {
found = true;
}
});
return found;
}
});
return {
QueriesCollection: QueriesCollection
};
});
謝謝@dbaseman - 看起來像一個更好的解決方案。骨幹集合是否繼承了所有的下劃線方法_directly_(可通過集合。點符號訪問)?我希望閱讀文檔更好;) – Inoperable
他們這樣做,是的 - 在骨幹文檔中看到這個部分,它指出Backbone集合代理所有Underscore方法:http://backbonejs.org/#Collection-Underscore-方法 – McGarnagle