小编Cyb*_*ser的帖子

executeScript 未定义或不是 ManifestV3 扩展中的函数

为什么 chrome 的这个功能不起作用?我重复示例 https://developer.chrome.com/docs/extensions/mv3/content_scripts/#programmatic

我为 chrome 开发了扩展并将消息从“popup.js”发送到服务工作者“background.js”并在“executeScript”中出错。

弹出窗口.js

chrome.runtime.sendMessage({ from: "newScript"}); 
Run Code Online (Sandbox Code Playgroud)

清单文件

{
    "manifest_version": 3,
    "name": "TennisBet",
    "version": "1.0",
    "description": "Extrension for bet on tennis.",
    "action": {
        "default_icon": {
            "256": "images/tennis256.png",
            "128": "images/tennis128.png",
            "64": "images/tennis64.png",
            "32": "images/tennis32.png",
            "24": "images/tennis24.png",
            "16": "images/tennis16.png"
        },
        "default_popup": "popup/popup.html"
    },
    "background": {
        "service_worker": "background-wrapper.js"
    },
    "host_permissions": ["*://*/*"],
    "permissions": [
        "tabs",
        "alarms",
        "activeTab",
        "declarativeContent",
        "storage"
    ]
}
Run Code Online (Sandbox Code Playgroud)

背景.js

chrome.runtime.onMessage.addListener(function(request, sender, sendResponse) {
    switch(request.from){
        case "error":
            console.log(request.message);
            break;
        case "checkTabs":
            tabsWorker();      
            break;
        case "newScript":
            chrome.scripting.executeScript({ // Error …
Run Code Online (Sandbox Code Playgroud)

javascript google-chrome-extension

2
推荐指数
1
解决办法
1829
查看次数