Ich verwende Backbone.js, Lawnchair und backbone.lawnchair.js.Löschen Sie alle Elemente aus der Backbone Collection und entfernen Sie sie aus dem zugehörigen Lawn Chair
Ich fragte mich, was der richtige Weg wäre, eine Sammlung (sowohl von der Anwendung und von localStorage) "zu leeren" wäre?
Derzeit bin ich Einsatz etwas in diese Richtung:
Favorites.Collection = Backbone.Collection.extend({
model: Favorites.Model,
lawnchair: new Lawnchair({ name: "favorites" }, function(e){}),
empty: function(){
this.lawnchair.nuke();
this.fetch();
}
});
Dies ist im wesentlichen der Elemente in local zerstören (lawnchair liefert die Nuke-Methode) und das Abrufen von local. Das scheint ein wenig klobig zu sein, und ich habe mich gefragt, ob ich über dieses Recht nachdenke - oder ob es einen besseren Weg gibt.
Prost!
http://documentcloud.github.com/backbone/#Collection-reset "Wenn collection.reset() aufgerufen wird, ohne Modelle als Argumente zu übergeben, wird die gesamte Sammlung leer." – asawyer
Zurücksetzen leert die Sammlung, behebt den Status jedoch nicht. Mit anderen Worten, wenn ich die Sammlung zurückstelle, wird der Liegestuhl nicht mit einem Atomkraftwerk belastet. – andrewpthorp
Ich dachte, du fragst nach einem besseren Weg, dann lösche den Status/leere Zustand holen. Ich schlug vor, den Status zu löschen/zurücksetzen. Sie können auch collection.reset überschreiben, um den Status zu löschen, und das ursprüngliche Zurücksetzen aufrufen. – asawyer