Backbone.js driver for the localForage offline storage library.
Install with bower:
bower install localforage-backbone
Run tests with grunt:
grunt test
Submit issues, pull requests, etc. if something is up! <3
This library lets you override the sync() method on your collections and
models so they're saved to localForage instead of a REST server. Simply
override your objects' sync() method with the namespace for your model:
var MyModel = Backbone.Model.extend({
sync: Backbone.localforage.sync('MyModel')
});
var MyCollection = Backbone.Collection.extend({
model: MyModel,
sync: Backbone.localforage.sync('MyCollection')
});Now whenever you save your collections or models, they'll be saved with localForage!
This library is only about overriding Backbone.sync, which means that calling collection.remove(model) won't update the offline storage.
The Backbone.Collection.remove function is only about removing a model from a collection, to clean up all references and event listeners, but does not involve a sync operation.
If you want to destroy a model, you should use this code instead:
// retrieve a model by its id and destroy it
collection.get(id).destroy();
// or
// retrieve a model by its index in the collection and destroy it
collection.at(index).destroy();This program is free software; it is distributed under an Apache License.
Copyright (c) 2014 Mozilla (Contributors).