我编写了一个简单的扩展,只是为了学习它是如何工作的。
清单V3:
{ "name": "Sample",
"version": "1.0",
"manifest_version": 3,
"action": {
"default_name": "Sample",
"default_popup": "popup.html"
},
"background": {
"service_worker": "background.js"
},
"permissions": ["tabs", "storage", "activeTab", "clipboardRead", "scripting"],
"host_permissions": ["http://*/", "file://*/*", "https://*/", "*://*/*"]
}
popup.html:
.....
.....
<button id='getInfo' >GET</button>
.....
.....
popup.js:
....
document.getElementById("getInfo").addEventListener("click", function() {
chrome.tabs.query(
{active: true, currentWindow: true},
(tabs) => {
chrome.scripting.executeScript({
target: {tabId: tabs[0].id},
file: ['func.js'],
});
});
}
func.js:
alert("extension sample")
当我按下按钮'GET'我收到一个错误在扩展管理器页面。错误说:“错误处理响应:TypeError:调用脚本时出错.executeScript(脚本.ScriptInjection注入,可选函数回调):参数“injection”处出错:意外属性:'档案'”。
我试过用函数代替文件,它工作正常。
我怎么能修复这个错误?谢谢。
1条答案
按热度按时间mwg9r5ms1#
chrome.scripting.executeScript
没有file
属性。应使用files
属性。在下面的Google官方文档中搜索“
executeScript
“以查看示例。https://developer.chrome.com/docs/extensions/reference/scripting/