我是扩展开发的新手。现在我正在测试使用附加 SDK 开发的 Firefox 扩展。我想使用 HTM5 localstorage 从我的扩展中的一个后台脚本中存储一些东西,这些脚本将从同一扩展的不同后台脚本中获取。npm(节点数据包管理器)已被使用,所以问题是我无法使用浏览器 localStorage 对象,ReferenceError: localStorage is not defined
这就是我得到的。
通过冲浪,我开始了解 node-localstorage。我正在按照 https://www.npmjs.com/package/node-localstorage的说明进行操作。但是,当我使用上面链接中的给定代码测试我的扩展时,我收到一个错误:
Message: Module `localStorage.js` is not found at resource://gre/modules/commonjs/localStorage.js
Stack:
module.exports@resource://xxx-at-xyz-dot-com/scripts/Somescript.js:3:23
@resource://xxx-at-xyz-dot-com/index.js:6:11
run@resource://gre/modules/commonjs/sdk/addon/runner.js:147:19
startup/</<@resource://gre/modules/commonjs/sdk/addon/runner.js:87:9
Handler.prototype.process@resource://gre/modules/Promise-backend.js:933:23
this.PromiseWalker.walkerLoop@resource://gre/modules/Promise-backend.js:812:7
this.PromiseWalker.scheduleWalkerLoop/<@resource://gre/modules/Promise-backend.j s:746:1 –
这是我尝试使用 localStorage 的近似值:
//Somescript.js (background script)
module.exports = function () {
this.watchTab = function (tabId, port, url) {
//some code
localStorage.setItem("key","value");
// some code
}
}
该行localStorage.setItem("key","value")
抛出错误ReferenceError: localStorage is not defined.
这是我无法使用 localStorage 的原因。