使用生成器在线工具https://builder.addons.mozilla.org/来构建和测试我的扩展,现在我想在本地存储数据,我正在学习本教程https://developer.mozilla.org/en/Storage,但是代码片段对我不起作用,我应该使用经典的SQLite在本地开发它们吗,或者有没有办法向附加组件生成器添加SDK支持?
发布于 2011-11-03 17:41:39
Add-on SDK默认情况下是沙箱的,不提供对XPCOM的直接访问。要使用XPCOM对象,您需要break out of the sandbox
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。
发布于 2012-08-18 20:53:42
您可以使用简单的JS包装器:https://github.com/julianceballos/sqlite-jetpack
https://stackoverflow.com/questions/7992544
复制相似问题