0
我已存儲使用下面的代碼使用id.js文件在內存中的一個數組:無法從插件瀏覽器訪問本地存儲在Firefox
var ids = ["a", "b"];
var obj= {};
var loc = '0';
obj[loc] = ids.toString();
browser.storage.local.set(obj);
browser.storage.local.get(loc,function(result){
console.log(result);
//console output = {v1:'s1'}
})
上附加
我有這樣的一個HTML文件:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<link rel="stylesheet" href="popup.css"/>
</head>
<body>
<button class="download">Download</button>
<script type="text/javascript" src="popup.js"></script>
</body>
</html>
和popup.js爲:
Components.utils.import("resource://gre/modules/Console.jsm");
var downloadBtn = document.querySelector('.download');
downloadBtn.addEventListener('click', downloadUser);
function downloadUser() {
browser.storage.local.get("ids",function(result){
var filename = "ids.txt";
var text = result;
alert(text);
var pom = document.createElement('a');
pom.setAttribute('href', 'data:text/plain;charset=utf-8,' + encodeURIComponent(text));
pom.setAttribute('download', filename);
if (document.createEvent) {
var event = document.createEvent('MouseEvents');
event.initEvent('click', true, true);
pom.dispatchEvent(event);
}
else {
pom.click();
}
})
}
從popup.js是用於獲取從存儲器,然後將數據downloadi它。但沒有任何工作。
這裏是清單文件:
{
"manifest_version": 2,
"name": "AAA",
"version": "1.0",
"icons": {
"48": "icons/border-48.png"
},
"content_scripts": [
{
"matches": ["<all_urls>"],
"js": ["id.js", "popup.js"]
}
],
"permissions": [
"storage"
],
"browser_action": {
"default_icon": {
"48": "icons/border-48.png"
},
"default_title": "Id",
"default_popup": "popup.html"
}
}
在你的'popup.js:1:1'中'Components.utils'是未定義的。您不需要控制檯就可以打印。此外,您還有其他錯誤,請在運行Web擴展時檢查瀏覽器控制檯。 –
瀏覽器控制檯爲空。你能突出你說的哪個部分是錯的嗎? –
我還在:'TypeError:downloadBtn爲空popup.js:2:1' 另外,請確保您的網絡擴展程序可以使用本地存儲:驗證「webextensions.storage.sync.enabled」 'about:config'設置爲true –