我正在为 Chrome 创建一个 webextension,以下代码会导致错误:
$(function () {
$('[data-toggle="popover"]').popover();
// ...
});
Chrome 抱怨说:
未捕获的类型错误:jquery_1.default(...).popover 不是函数
看起来引导程序根本不可用。我知道脚本的导入顺序很重要:Chrome 扩展“$ is not defined”错误
所以我确保在我的代码之前包含引导程序:
"content_scripts": [
{
"js": [
"assets/jquery/dist/jquery.min.js",
"assets/popper.js/dist/popper.min.js",
"assets/bootstrap/dist/js/bootstrap.min.js",
"content/index.js"
],
"css": [
"assets/css/extra.css",
"assets/bootstrap/dist/css/bootstrap.min.css"
]
}
],
这些脚本路径是有效的。
编辑:
对不起,我搞砸了这个错误的文档。显然,只有当我使用打包工具(例如包裹)时才会发生这种情况。我只用包裹进行了测试,但我相信任何捆绑管理器都会出现这个问题,例如 webpack 或 browserify。