Chrome扩展使用require.js加载core.js模块出现Script error错误求助
问题根因
你配置的baseUrl: 'app'是相对路径,Chrome扩展的content script运行在网页上下文环境中,相对路径默认会拼接在当前访问的网页域名下,不会指向扩展的内部文件目录,因此会出现404报错无法加载core.js。
解决步骤
- 配置扩展可访问资源
在manifest.json中添加web_accessible_resources配置,开放app目录下的js模块访问权限:
如果是Manifest V3版本:
{ "web_accessible_resources": [ { "resources": ["app/*.js"], "matches": ["<all_urls>"] } ] }
如果是Manifest V2版本:
{ "web_accessible_resources": ["app/*.js"] }
- 修改requirejs配置的baseUrl为扩展绝对路径
调用Chrome扩展官方APIchrome.runtime.getURL获取扩展根目录的绝对路径,修改app.js中的requirejs配置:
requirejs.config({ baseUrl: chrome.runtime.getURL('app'), paths: { } });
配置完成后重新加载扩展即可正常加载core模块,执行预期的log输出。
内容的提问来源于stack exchange,提问作者Plinio
相关产品推荐
相关产品推荐

