【发布时间】:2019-03-30 03:38:00
【问题描述】:
我正在为 Chrome 创建 web 扩展,以下代码导致错误:
$(function () {
$('[data-toggle="popover"]').popover();
// ...
});
Chrome 抱怨说:
未捕获的类型错误:jquery_1.default(...).popover 不是函数
看来 bootstrap 根本不可用。我知道脚本的导入顺序很重要:Chrome extension "$ is not defined" error
所以我确保在我的代码之前包含引导程序:
"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"
]
}
],
这些脚本路径是有效的。
编辑:
对不起,我弄乱了这个错误的文档。 显然,只有当我使用打包工具(例如包裹)时才会发生这种情况。 我只用 parcel 进行了测试,但我相信任何捆绑管理器都会出现这个问题,例如 webpack 或 browserify。
【问题讨论】:
-
文档说“Popovers 需要工具提示插件作为依赖项”。
标签: javascript webpack google-chrome-extension browserify parceljs