43 votes

Backbone.js est capable de se reposer et de stocker localement?

J'ai fait des expériences avec le localstorage module pour Backbone.js (https://github.com/jeromegn/Backbone.localStorage). Ce que je comprends cette surcharge de la colonne vertébrale.synchronisation et donc s'arrête dorsale de pousser vers le serveur(?). Idéalement, je voudrais transmettre mes données vers le serveur en tant que bien et persister localement lorsqu'ils sont en ligne et il suffit d'utiliser localstorage en mode hors connexion (vous savez, l'application est parfaite). Je n'ai pas trouvé de documents encore.

Est L'Épine Dorsale.localStorage une partie de cela? Quelqu'un a été en mesure de construire ce scénario? Comment est-ce fait? (S'il vous plaît dites-moi je n'ai pas de rouler mes propres.)

Merci.

45voto

Raynos Points 82706

De la colonne vertébrale.localStorage est un fichier externe, vous pouvez utiliser qui remplace de la colonne vertébrale.La synchronisation.

Vous pouvez utiliser la simple fonctionnalité de détection pour savoir si l'utilisateur est hors ligne ou en ligne et ensuite chargez de façon asynchrone Backbone.localStorage.js s'ils sont hors ligne.

Si nécessaire, vous pouvez également passer à une version spécifique d' Backbone.sync de vos modèles et des collections.

Si vous voulez faire les deux en même temps, vous devrez écrire votre propre version de la colonne vertébrale.synchroniser que les deux appelle le serveur et les appels localStorage.

La façon la plus simple pour ce faire est de simplement définir

Backbone.sync = function() {
    originalSync.apply(this, arguments);
    localStorageSync.apply(this, arguments);
}

Edit:

Comme mentionné dans les commentaires, si vous utilisez la dernière épine dorsale localStorage plugin ensuite, vous pouvez effectuer les opérations suivantes

Backbone.sync = function Sync() {
    Backbone.ajaxSync.apply(this, arguments);
    return Backbone.localSync.apply(this, arguments);
};

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X