从Firefox Addon worker处理SQLite数据库

时间:2013-04-16 12:56:45

标签: sqlite firefox-addon-sdk xpcom worker

我正在开发一个需要经常写入SQLite数据库的Firefox扩展(这是出于某些实验目的,而不是生产或任何东西)。问题是写入数据库有一些开销,所以我认为我可以将这部分移动到后台工作者,以免破坏浏览活动。

现在我的问题是我无法从工作人员访问XPCOM组件;即做

Components.utils.import("resource://gre/modules/Services.jsm");
Components.utils.import("resource://gre/modules/FileUtils.jsm");
来自工作人员的

将无效(Components未定义)。

有没有解决方法呢?

1 个答案:

答案 0 :(得分:0)

请参阅indexed-db模块https://addons.mozilla.org/en-US/developers/docs/sdk/latest/modules/sdk/indexed-db.html

var { indexedDB } = require('indexed-db');

var request = indexedDB.open('MyDatabase');
request.onerror = function(event) {
  console.log("failure");
};
request.onsuccess = function(event) {
  console.log("success");
};