Магистраль без хранилища данных - PullRequest
5 голосов
/ 30 января 2012

Я работаю над автономным приложением javascript. Он должен поддерживать IE7, поэтому localStorage не вариант. Тем не менее, приложению не нужно сохранять какую-либо информацию (если вы обновляете все стирается, и это нормально).

Итак, мой вопрос: как настроить Backbone для использования стандартной переменной javascript (JSON) в качестве хранилища данных?

Если я опускаю метод model.url (), я получаю ошибку. Я думаю, это просто, но я не уверен, что делать.

Спасибо!

Ответы [ 2 ]

3 голосов
/ 30 января 2012

Если вы посмотрите, что делает адаптер localStorage , вы обнаружите, что он переопределяет Backbone.sync. Это модуль в Backbone, который отвечает за хранение / обновление / извлечение / обновление ваших данных, когда вы звоните new, save, fetch и т. Д.

По умолчанию используется конечная точка RESTful, определенная в url вашей модели. Если вы используете переопределение LocalStorage, оно помещается в локальное хранилище.

Если вместо этого вы просто хотите поместить его в массив в памяти, вы просто переопределите Backbone.sync таким же образом, определив, что делают «read», «update», «create» и «delete». Я бы основал его на адаптере backbone-localstorage.js, так как он делает большую часть того, что вы хотите, но я бы затем сохранял / извлекал из хэша пар ключ / значение id / object.

2 голосов
/ 31 января 2012

Просто не используйте методы save или create.

Вместо этого используйте store и add.Они не пытаются сохранить данные в хранилище.

...