跨浏览器扩展存储:chrome.storage 或 browser.storage 还是?

Tom*_*ndy 8 storage firefox-addon google-chrome-extension

我有一个在 Chrome 中工作的扩展,它使用 chrome.storage.local.set 和 .get。我无法理解 WebExtensions API 文档中有关如何将该存储代码移植到 Firefox 的信息。

WebExtensions API 文档引用的一些示例代码使用 browser.storage.local.set 和 .get,但当我在 Chrome 中运行的扩展程序中使用它们时,这些行返回“浏览器未定义”。这里的WebExtensions API 移植文档建议 chrome.storage.local.set 和 .get 应该在 Firefox 和 Safari 中工作,但是,也许我读错了?

我还没有在 Firefox 扩展中尝试过 chrome.storage.set 和 .get 。他们应该只是工作吗?

joh*_*jik 5

在 Chrome 中,JavaScript API 是在 chrome 命名空间下访问的。在 Firefox 和 Edge 中,它们是在浏览器命名空间下访问的。

来自https://developer.mozilla.org/en-US/Add-ons/WebExtensions/Chrome_incompatibilities

因此,对于您的情况,听起来您必须更改所有镀铬。无论什么进入浏览器。任何