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