清单 v3:使用 chrome.runtime.getURL 时 net::ERR_FILE_NOT_FOUND?
Manifest v3: net::ERR_FILE_NOT_FOUND when using chrome.runtime.getURL?
我在使用 chrome.runtime.getURL
函数时遇到 net::ERR_FILE_NOT_FOUND
错误。
manifest.json
{
"name": "Dummy",
"manifest_version": 3,
"version": "1.0.0",
"icons": {
"16": "icon16.png",
"48": "icon48.png",
"128": "icon128.png"
},
"action": {
"default_icon": {
"16": "icon16.png",
"48": "icon48.png"
}
},
"permissions": ["activeTab", "storage", "scripting"],
"background": {
"service_worker": "background.js"
},
"content_scripts": [
{
"matches": ["*://*/*"],
"js": ["content.js"]
}
],
"web_accessible_resources": [
{
"resources": ["src/images/*.jpg"],
"matches": ["<all_urls>"]
}
]
}
我在 constants.ts
文件中使用它,该文件不是服务工作者或内容脚本,只是一个随机文件:
chrome.runtime.getURL('src/images/1.jpg')
但是当我尝试在 style
标签中显示它时,我没有得到 URL 而是一个错误:
style={{ background: `url(${chrome.runtime.getURL('src/images/1.jpg')})` }}
我该如何解决?我什至尝试在新标签页中打开看起来像 chrome-extension://hhnlljbelglibjololeadifpojkopfk/src/images/1.jpg
的 URL,但它没有显示任何内容。
如何解决?
当你在CSS文件或代码行中使用它时,尝试这样使用它:
style={{ background: url('chrome-extension://__MSG_@@extension_id__/src/images/1.jpg') }}
有关详细信息,请参阅此 Chrome 开发者页面:
https://developer.chrome.com/docs/extensions/reference/i18n/#overview-predefined
糟糕,正如 wOxxOm 所说,我的 copy-webpack-plugin
没有复制 images
文件夹。
我把我的webpack.config.js
改成了复制的
plugins: [
new CopyPlugin({
patterns: [
{ from: 'public', to: '.' },
{ from: 'src/images', to: 'images/' },
],
}),
],
我在使用 chrome.runtime.getURL
函数时遇到 net::ERR_FILE_NOT_FOUND
错误。
manifest.json
{
"name": "Dummy",
"manifest_version": 3,
"version": "1.0.0",
"icons": {
"16": "icon16.png",
"48": "icon48.png",
"128": "icon128.png"
},
"action": {
"default_icon": {
"16": "icon16.png",
"48": "icon48.png"
}
},
"permissions": ["activeTab", "storage", "scripting"],
"background": {
"service_worker": "background.js"
},
"content_scripts": [
{
"matches": ["*://*/*"],
"js": ["content.js"]
}
],
"web_accessible_resources": [
{
"resources": ["src/images/*.jpg"],
"matches": ["<all_urls>"]
}
]
}
我在 constants.ts
文件中使用它,该文件不是服务工作者或内容脚本,只是一个随机文件:
chrome.runtime.getURL('src/images/1.jpg')
但是当我尝试在 style
标签中显示它时,我没有得到 URL 而是一个错误:
style={{ background: `url(${chrome.runtime.getURL('src/images/1.jpg')})` }}
我该如何解决?我什至尝试在新标签页中打开看起来像 chrome-extension://hhnlljbelglibjololeadifpojkopfk/src/images/1.jpg
的 URL,但它没有显示任何内容。
如何解决?
当你在CSS文件或代码行中使用它时,尝试这样使用它:
style={{ background: url('chrome-extension://__MSG_@@extension_id__/src/images/1.jpg') }}
有关详细信息,请参阅此 Chrome 开发者页面: https://developer.chrome.com/docs/extensions/reference/i18n/#overview-predefined
糟糕,正如 wOxxOm 所说,我的 copy-webpack-plugin
没有复制 images
文件夹。
我把我的webpack.config.js
改成了复制的
plugins: [
new CopyPlugin({
patterns: [
{ from: 'public', to: '.' },
{ from: 'src/images', to: 'images/' },
],
}),
],