Какой вариант локального хранилища ближе всего к использованию базы данных

Когда я пишу свое первое приложение AngularJS, я столкнулся с требованием создать функцию ввода данных, которая будет работать в автономном режиме. На данный момент локальное хранилище - это скорее общее описание (для меня), чем конкретный способ работы с вещами. Мой вопрос: какова надежная техника / метод / api для хранения многих связанных записей в хранилище браузера, которые будут ощущаться при взаимодействии с базой данных?


person Eugene Goldberg    schedule 15.03.2014    source источник


Ответы (4)


На данный момент локальное хранилище - это скорее общее описание (для меня), чем конкретный способ работы с вещами.

Локальное хранилище - это действительно API, и оно должно быть таким. Благодаря localForge от Mozilla, это действительно просто API.

Из описания проекта:

Автономное хранилище, улучшено. Оборачивает IndexedDB, WebSQL или localStorage с помощью простого, но мощного API.

Ищет IndexDB, а затем возвращается к WebSQL, а затем к localStorage, если это действительно необходимо.

Однако, если вы хотите использовать функции фильтрации / сортировки базы данных, breezejs.com выглядит неплохо.

person lprsd    schedule 13.08.2014

С локальным хранилищем HTML5 очень легко работать, но имейте в виду, что оно будет хранить только данные, специфичные для этого отдельного браузера, и никогда не позволит вам заменить внутреннюю базу данных, которая может хранить данные, агрегированные от нескольких клиентов.

На самом деле это всего лишь хранилище ключей и значений, поэтому, если вы ищете функциональные возможности реляционной базы данных, вы этого не получите.

Кроме того, это не будет обратно совместимо со старыми браузерами, которые не поддерживают эту функцию.

Вот хорошее введение в локальное хранилище HTML5: http://diveintohtml5.info/storage.html

person Mike Brant    schedule 15.03.2014
comment
Хороший пример того, что мне нужно, - это автономный опрос для описания 100 различных автомобилей, каждая из которых имеет 100 различных полей описания. Представьте себе типичную форму ввода данных, которая заполняется много раз, каждый раз новыми уникальными данными. Полный набор данных должен быть отправлен только после того, как будут созданы все 100 записей. - person Eugene Goldberg; 15.03.2014

Осмотревшись, оказывается, что использование индексирования - лучший вариант. Я нашел эти (два верхних) готовых примера того, как это сделать с помощью angular:
https://github.com/search?q=angular+indexeddb&ref=cmdform

person Eugene Goldberg    schedule 15.03.2014