November: Procrastination Month

    backbone.localstorage
    DefinitelyTyped icon, indicating that this package has TypeScript declarations provided by the separate @types/backbone.localstorage package

    2.1.0 • Public • Published

    Backbone localStorage Backend

    Build Status Coverage Status npm version

    An adapter that replaces Backbone.sync to save to window.localStorage instead of to the server.

    Note Backbone LocalStorage v2 changes the API to work more with ES6 modules. See Upgrade Notes for more details.

    Usage

    Import backbone.localstorage and attach it to your models and collections:

    import {Collection, Model} from 'backbone';
    import {LocalStorage} from 'backbone.localstorage';
    
    const SomeCollection = Collection.extend({
    
      localStorage: new LocalStorage('SomeCollection'), // Uniquely identify this
    
    });
    
    const SomeModel = Model.extend({
    
      localStorage: new LocalStorage('SomeModel')
    
    });

    To synchronise with the server, you can pass the ajaxSync flag to any options:

    const myModel = new SomeModel();
    myModel.fetch({
      ajaxSync: true  // Fetches from the server
    });
    
    myModel.save({
      new: "value"
    }, {
      ajaxSync: true  // Pushes back to the server
    });

    Upgrade Notes

    Backbone LocalStorage is now built using ES6. It should be fully compatible with v1 with one difference: Instead of exporting the LocalStorage class as a default module, v2 exports it as a named variable. Below are examples covering the changes:

    JavaScript ES5

    In v1:

    var LocalStorage = require('backbone.localstorage');

    In v2:

    var localStorage = require('backbone.localstorage');
    var LocalStorage = localStorage.LocalStorage;

    JavaScript ES6+

    In v1:

    import LocalStorage from 'backbone.localstorage';

    In v2:

    import {LocalStorage} from 'backbone.localstorage';

    Contributing

    Install NodeJS and run yarn or npm i to get your dependencies, then:

    1. Open an issue identifying the fault
    2. Provide a fix, with tests demonstrating the issue
    3. Run npm test
    4. Create a pull request

    Acknowledgments

    Install

    npm i backbone.localstorage

    DownloadsWeekly Downloads

    7,016

    Version

    2.1.0

    License

    MIT

    Unpacked Size

    206 kB

    Total Files

    19

    Last publish

    Collaborators

    • jeromegn
    • scott-w