Как использовать IndexedDB из двух мест

Например: у меня открыто N вкладок. Из каждой вкладки я получаю имя от <input> это будет использоваться в качестве значения магазина в дБ. Итак, у меня должно быть N магазинов. На каждой вкладке есть кнопка для подключения к IDB и начала сохранения объектов в своих собственных хранилищах.
Насколько я знаю из руководств, я могу создавать новые магазины только с помощью onupgradeneeded, Если моя первая вкладка будет использовать IDB, и я попробую на 2-й вкладке изменить версию IDB для вызова onupgradeneeded это будет работать?
Возможно ли это реализовать с помощью IDB?

1 ответ

Решение

onupgradeneeded запускается только при изменении версии, поэтому вам придется увеличивать версию при каждом добавлении хранилища объектов. Я не думаю, что вы действительно хотите сделать это таким образом, потому что изменение версии на одной вкладке потребует закрытия баз данных на другой и последующего их открытия в более высокой версии, потому что вы можете открыть только последнюю версию в один раз. По сути, это станет немного запутанным и запутанным.

Можете ли вы вместо этого положить все в один объект? Может быть, использовать имя из <input> в качестве ключа, или поместите его в свойство, по которому вы индексируете? Мне трудно сказать больше без подробностей о том, чего вы на самом деле пытаетесь достичь.

Другие вопросы по тегам