Мне не удается сохранить данные с помощью indexedDB в расширении Firefox. Я также не могу найти информацию об расширениях indexedDB и Firefox.Использование indexedDB в расширении Firefox
Неужели кто-нибудь когда-либо имел дело с этим?
Мне не удается сохранить данные с помощью indexedDB в расширении Firefox. Я также не могу найти информацию об расширениях indexedDB и Firefox.Использование indexedDB в расширении Firefox
Неужели кто-нибудь когда-либо имел дело с этим?
Единственная проблема заключается в том, что для indexedDB
вам нужно окно, отличное от того, что при использовании его надстройка не особо выделяется. У классических надстроек обычно есть окно, которое они могут использовать, но надстройки, созданные с помощью SDK Add-on, выполняются в контексте без окон. Так что если вы используете SDK вы используете внутренний window-utils
пакет:
var window = require("window-utils").activeWindow;
var indexedDB = (window.indexedDB || window.mozIndexedDB);
var request = indexedDB.open("MyExtensionDB");
Заметьте, что все расширения используют одно пространство имен (chrome://
) насколько идет IndexedDB. Поэтому вы должны выбрать имя базы данных таким образом, чтобы она не сталкивалась с именами, которые могли бы выбрать другие расширения.
Начиная с Firefox 12 требуется исключить окно. nsIIndexedDatabaseManager.initWindowless()
можно использовать для ввода объекта mozIndexedDB
в любой объект. Соответствующая ошибка: bug 587797.