我正在尝试将 chrome.scripting.executeScript 用于我在 ManifestV3 中构建并遵循 Google 文档 here 的 chrome 扩展(见下图):
我添加了一个“参数”属性以将当前选项卡的标题传递给我的函数。但是,我收到以下错误消息:TypeError: Error in invocation of scripting.executeScript(scripting.ScriptInjection injection, optional function callback): Error at parameter 'injection': Unexpected property: 'arguments'.
这是我的代码:
chrome.tabs.query({ active: true }, function (tabs) {
let tab = tabs[0];
chrome.scripting.executeScript(
{
target: { tabId: tab.id },
function: myFunction,
arguments: [tab.title],
},
(injectionResults) => displaySearch(injectionResults[0].result)
);
});
任何帮助将不胜感激,谢谢!
最佳答案
使用的属性名称不正确。新 API 使用属性“args”。
例如:
function greet(greeting) {
console.log(`${greeting}, World!`);
}
chrome.scripting.executeScript({
target: {tabId: tab.id},
function: greet,
args: ['Hello']
});
Output: Hello, World!
您可以找到更多信息here .
关于javascript - chrome.scripting.executeScript - 意外属性 : 'arguments' ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66788838/