使用 Builder 在线工具 https://builder.addons.mozilla.org/ 构建和测试我的扩展现在我想在本地存储数据我正在关注本教程 https://developer.mozilla.org/en/Storage 但是代码片段对我不起作用我应该使用经典 SDK 在本地开发它们还是有办法将 SQLite 支持添加到附加组件构建器?
问问题
1134 次
2 回答
3
附加 SDK 默认为沙盒,不提供对 XPCOM 的直接访问。要使用 XPCOM 对象,您需要跳出沙箱:
var {Cc, Ci, Cu} = require("chrome");
var {Services} = Cu.import("resource://gre/modules/Services.jsm");
var {FileUtils} = Cu.import("resource://gre/modules/FileUtils.jsm");
var file = FileUtils.getFile("ProfD", ["my_db_file_name.sqlite"]);
var mDBConn = Services.storage.openDatabase(file);
请注意,Components
保持未定义 - 使用Cc
而不是Components.classes
,Ci
而不是Components.interfaces
和Cu
而不是Components.utils
。
于 2011-11-03T09:41:39.200 回答
1
您可以使用简单的 JS 包装器:https ://github.com/julianceballos/sqlite-jetpack
于 2012-08-18T12:53:42.420 回答