# NvmStorage
Обертка над IndexDb Api, предоставляющая более стандартный интерфейс Установка
npm install nvm-storage --save
Интеграция
;
addMigration(migration: (db: IDBDatabase, ev: IDBRequest) => void): void
Регистрирует миграции базы, для поддержания актуальной версии. Регистрация должна производиться до установления соединения.
this._db.addMigration;this._db.addMigration;
open(name): Subject
Принимает в качестве параметра имя базы;
Открывает соединение с базой и высталяет флаг isActive в true если все прошло успешно.
Если версия базы ниже количества зарегистрированных миграций - обновляет базу.
Возвращает Subject<boolean>
который эмитит значение true/false по завершении соединения.
this._db.openDB_NAME.subscribe;
insert(obj: IdItem): Observable
Реализует добавление элемента в базу. Все сущности в базе должны реализовывать интерфейс IdItem. Данные добавляются в существующую таблицу по имени класса. В примере это будет таблица 'Entity'
;this._db.insertitem.subscribe;
update(obj: IdItem, key: number): Observable
Реализует обновление элемента в базе
item.name = 'Петров Петр Петрович';this._db.updateitem, 1.subscribe;
select(table: string, query?: IDBKeyRange): Observable<Array>
Выборка из базы
this._db .select'Entity', IDBKeyRange.bound1, 20 .subscribe;
delete(table: string, key: string): Observable
Реализует удаление из базы.
this._db.delete'Entity', '1'.subscribe;