未捕获的类型错误:无法建构'URL':使用消息时chrome扩展v3中的URL无效

6uxekuva  于 2022-12-06  发布在  Go
关注(0)|答案(2)|浏览(389)

下面是v3中chrome的最小扩展:

清单.json

{
  "manifest_version": 3,
  "name": "Test",
  "version": "1.0",
  "description": "Test extension",
  "icons": {
    "48": "dark.png"
  },
  "background": {
    "service_worker": "button.js"
  },
  "permissions": [
    "activeTab"
  ],
  "action": {
    "default_icon": "dark.png",
    "default_title": "Test"
  }
}

按钮.js

chrome.action.onClicked.addListener(tab => {
  console.log('clicked')
  chrome.tabs.sendMessage(tab.id, { value: false })
});

API在文档中看起来很清楚。所以我不明白为什么当我按下插件按钮时,会出现奇怪的错误:

extensions.js:4187 Uncaught TypeError: Failed to construct 'URL': Invalid URL
    at ExtensionsErrorPageElement.onSelectedErrorChanged_ (extensions.js:4187:2827)
    at Object.runObserverEffect [as fn] (polymer_bundled.min.js:1:37568)
    at runEffectsForProperty (polymer_bundled.min.js:1:37087)
    at runEffects (polymer_bundled.min.js:1:36604)
    at ExtensionsErrorPageElement._propertiesChanged (polymer_bundled.min.js:1:52973)
    at ExtensionsErrorPageElement._flushProperties (polymer_bundled.min.js:1:26564)
    at ExtensionsErrorPageElement._flushProperties (polymer_bundled.min.js:1:51737)
    at ExtensionsErrorPageElement._invalidateProperties (polymer_bundled.min.js:1:51534)
    at ExtensionsErrorPageElement._setProperty (polymer_bundled.min.js:1:51459)
    at ExtensionsErrorPageElement.Object.defineProperty.set (polymer_bundled.min.js:1:24863)
onSelectedErrorChanged_ @ extensions.js:4187
runObserverEffect @ polymer_bundled.min.js:1
runEffectsForProperty @ polymer_bundled.min.js:1
runEffects @ polymer_bundled.min.js:1
_propertiesChanged @ polymer_bundled.min.js:1
_flushProperties @ polymer_bundled.min.js:1
_flushProperties @ polymer_bundled.min.js:1
_invalidateProperties @ polymer_bundled.min.js:1
_setProperty @ polymer_bundled.min.js:1
Object.defineProperty.set @ polymer_bundled.min.js:1

我错过了什么?

  • 这是在Chromium版本100.0.4896.75(官方版本)快照(64位)上 *
amrnrhlw

amrnrhlw1#

我有同样的例外,但有另一个原因。
所以,我看到了可能的解决方案(如何获得真正的错误消息)。
我已经在失败的行上设置了断点,并检查了runtimeError消息。
对某些人可能有用。
第一次

jpfvwuh4

jpfvwuh42#

1.请删除节点模块或在新文件夹中克隆存储库
1.安装节点(npm安装)

  1. npx柏树开
    它工作得很好。

相关问题