我最近发现了chrome扩展的开发,并被困在了方法中,第三个参数中的回调系统地返回一个空对象.
为了简洁起见,我将不使用我的所有manifest.json(v2):
清单权限:
"permissions": [
"storage",
"cookies",
"tabs",
"background",
"activeTab",
"<all_urls>",
"*://*/*"
]清单内容-脚本:
"content_scripts": [
{
"matches": ["<all_urls>"],
"run_at": "document_end",
"js": ["js/content-script.js"]
}
]我的目标是将localStorage的内容发送到我的扩展。
pop-up.js:
chrome.tabs.executeScript(
null,
{ file: "js/content-script.js" },
(result) => {
if(result) console.log( " Result of content-script:",result )
else console.log(" No content-script, no result")
}
);内容-script.js:
localStorage;扩展控制台中的输出:
Result of content-script: Array(1)
▶︎ 0: {}
length:1
▶︎ __proto__: Array(0)请给我解释一下这个错误,让这是一个美妙的夜晚!谢谢!
发布于 2021-05-02 20:21:08
我一直没找到解决办法。但是我通过用这个方法发送数据来解决这个问题:
内容-script.js:
chrome.runtime.sendMessage({'localStorage' : localStorage});pop-up.js:
chrome.runtime.onMessage.addListener((message) => {message.localStorage});https://stackoverflow.com/questions/67319351
复制相似问题