Se si dispone di una raccolta Backbone e si desidera creare una copia di tale raccolta con determinate voci filtrate, come posso farlo mantenendo l'istanza copiata come Backbone.Collection?Filtro backbone
Esempio:
var Module = Backbone.Model.extend();
var ModuleCollection = Backbone.Collection.extend({
model: Module
});
var modules = new ModuleCollection;
modules.add({foo: 'foo'},{foo: 'bar'});
console.log(modules instanceof Backbone.Collection); // true
var filtered = modules.filter(function(module) {
return module.get('foo') == 'bar';
});
console.log(filtered instanceof Backbone.Collection); // false
Nell'esempio precedente, vorrei filtered
per essere una versione filtrata di moduli, non solo una serie di modelli.
In sostanza, vorrei creare un metodo nell'istanza di raccolta in grado di filtrare determinati modelli e restituire l'istanza Backbone.Collection
, ma non appena inizio il filtraggio i metodi di iterazione restituiscono un array.
ha un senso. Grazie! – David