Небольшой пример кода будет полезен.
Я не уверен, как вы загружаете список элементов с сервера при первом запуске, если у вас работает локальное хранилище, но я бы, вероятно, собрал его вместе.
ОЧЕНЬ ПРОСТОЙ способ сделать это, если вам никогда не нужно возвращаться на сервер для обновления каких-либо моделей во время работы приложения, это просто доставлять модели с сервера, встроенного в приложение, и загружать их при создании Ваша коллекция:
foo = new MyCollection(myJSONthatContainsAllTheModels)
Для получения дополнительной информации см. Начальная загрузка в Основных документах.
Если вам необходимо периодически обновлять с сервера приложение, то ..
Использование backbone-localstorage, как, с одним изменением. Это означает, что он будет переопределять метод синхронизации и любые обычные функции «выборки», «сохранения» и т. Д. Будут манипулировать локальным хранилищем. Изменение будет состоять в том, чтобы скопировать исходный Backbone.Sync в новую функцию, называемую что-то вроде Backbone.ServerSync, прежде чем заменить Backbone.Sync версией LocalStorage. Это сохраняет синхронизацию REST.
Затем я бы расширил Backbone.Collection новой функцией, которая используется для извлечения данных с сервера, используя вашу функцию Backbone.ServerSync.
Это не похоже на то, что backbone-localstorage мешает свойствам URL коллекций, поэтому вы должны быть в состоянии сделать это довольно легко.
Эта новая функция сбора, которая называется, скажем, serverfetch для ясности, будет более или менее клоном fetch, но с использованием вашего метода Backbone.ServerSync вместо Backbone.Sync.
После того, как он получит ответ от сервера и проанализирует его, он вызовет add для каждой модели, которая должна зафиксировать их в локальном хранилище.