chrome.storage.sync未定义?

我试图通过content_script在扩展中使用chrome存储,但我一直在失败

Uncaught TypeError: Cannot read property 'sync' of undefined 

这是我的代码:

 testChromeStorage(); function testChromeStorage() { console.log("Saving"); chrome.storage.sync.set({'value': theValue}, function() { message('Settings saved'); }); chrome.storage.sync.get("value", function (retVal) { console.log("Got it? " + retVal.value); }); } 

您必须在manifest.json文件中添加“存储”权限,即:

 ... "permissions": [ "storage" ], ... 

有关更多信息,请参阅: https : //developer.chrome.com/extensions/storage

如果有人在Fi​​refox上面对这个问题,请注意,它还不支持:

https://developer.mozilla.org/en-US/Add-ons/WebExtensions/API/storage#Chrome_incompatibilities

就我的目的而言,用chrome.storage.syncreplacechrome.storage.sync就足够了。

关于Firefox的实现状态,在这里也可能不时地看一下:

http://arewewebextensionsyet.com/#storage

我有我的manifest文件中添加“权限”键,但我仍然努力得到修复。

在添加权限之后: –

 "permissions": [ "storage" ] 

转到您的扩展使用:chrome:// extensions /&点击重新加载button: –

在这里输入图像说明

请参阅https://developer.chrome.com/extensions/content_scripts.html

但是,内容脚本有一些限制。 他们不可以:

使用铬。 API(chrome.extension的部分除外)*

(强调加)