迁移问题 Manifest-2 到 Manifest-3(service worker 不活动)

Migration issue Manifest-2 to Manifest-3 ( service worker inactive )

我正在将我的 chrome 扩展程序从清单版本 2 迁移到清单版本 3。 单击扩展程序图标注入文件时出现问题。

Manifest.json
{
    "manifest_version": 3,    
    "name": "Name of Extension",
    "description": "description",
    "version": "1.0.0",
    "background": {
        "service_worker": "background.js"
    },
    "permissions": [
        "activeTab",
        "scripting"
    ]
}

Background.js - 清单版本 3(此代码无效)

chrome.action.onClicked.addListener(function() {
    chrome.scripting.executeScript({
      files: ['"function.js"']
    });
});

background.js - 清单版本 2

chrome.browserAction.onClicked.addListener(function(tab) {
    chrome.tabs.executeScript(tab.id, {file: "function.js"});
});
  1. 使用 tab 参数,如 onClicked
  2. 文档中所述
  3. 按照 executeScript
  4. 的文档中的说明指定选项卡的 ID
  5. 删除文件名中的嵌套引号
chrome.action.onClicked.addListener(tab => {
  chrome.scripting.executeScript({
    target: {tabId: tab.id},
    files: ['function.js'],
  });
});