Я использую IndexedDB в приложении Windows 8, и я очень новичок в обоих. Я смог успешно создавать, читать, обновлять, удалять объекты из хранилищ объектов и создавать пару баз данных и несколько хранилищ объектов. Мой вопрос в том, как я могу перечислить все хранилища и базы объектов? Я создаю несколько фиктивных, которые не нужны, и я хотел бы немного почистить вещи, но я не могу вспомнить, как они названы. Возможно, это анальное ретентивное, но похоже, что должно быть возможно перечислить все базы данных и магазины. Спасибо!
IndexedDB просмотреть все базы данных и объекты
Ответ 1
В настоящее время нет способа перечисления существующих баз данных в стандарте . Приложения Windows 8 используют IE, который не предоставляет нестандартный метод webkitGetDatabaseNames
. Возможно, вы сможете очистить базы данных, используя диалог в IE10.
Список хранилищ внутри базы данных определен в стандарте с помощью метода objectStoreNames экземпляра IDBDatabase.
Ответ 2
РЕДАКТИРОВАТЬ 2018 Этот ответ больше не применяется:
webkitGetDatabaseNames() is deprecated in chrome 60
В Chrome webkit была функция, которая возвращала бы все имена баз данных, эта функция больше не доступна для Chrome 60 (webkitgetdatabasenames):
indexedDB.webkitGetDatabaseNames().onsuccess = function(sender,args)
{ console.log(sender.target.result); };
И есть еще одна функция, которая перечисляет все хранилища объектов в одной базе данных, которые работают во всех браузерах:
indexedDB.open(databaseName).onsuccess = function(sender, args)
{ console.log(sender.target.result.objectStoreNames); };
Ответ 3
На момент написания этого поста [chrome 72] Вы можете перечислить все базы данных, используя следующую команду в консоли браузера. По сути indexedDB.databases()
является Promise
. Вы можете использовать его, чтобы получить список всех баз данных в виде массива. Запустите цикл для массива, чтобы получить имена баз данных.
indexedDB.databases().then(r => console.log(r))
Надеюсь это поможет
Ответ 4
Поскольку все остальные темы ссылаются сюда как на дубликаты. В Chrome вы можете просмотреть и удалить все созданные базы данных в Developer Tools > Application > Storage
.
Чтобы просмотреть внутренние компоненты IndexedDB: chrome://indexeddb-internals/