【发布时间】:2018-06-19 01:02:58
【问题描述】:
我正在使用 Webpack 2、Bootstrap 3 和 TypeScript,并尝试将 npm 和打包的包集成到现有应用程序中。我使用ProvidePlugin 使jQuery 可用,并使用expose-loader 将jQuery 暴露给外部依赖项。
((<any> global).$ = global.jQuery = $; 或 webpackmodule: { rules [{}] } 配置的任何组合都不起作用,但最终我得到了以下工作:
plugins: ([
// make sure we allow any jquery usages outside of our webpack modules
new webpack.ProvidePlugin({
$: "jquery",
jQuery: "jquery",
jquery: "jquery",
"window.jQuery": "jquery",
"window.$": "jquery"
}),
]),
entry.ts:
import "expose-loader?$!jquery"
import "expose-loader?jQuery!jquery"
但是,当我尝试调用import "bootstrap" 时,我可以在我的模块内调用$(...).popover(),我可以在模块外调用$(...) 或jQuery(...),但我不能在模块外调用$(...).popover模块,而不是我得到这个错误:
未捕获的类型错误:$(...).popover 不是函数
如何使添加到 jQuery 的方法(如引导程序 popover 方法)在我的模块之外的全局范围内可用?
【问题讨论】:
标签: javascript twitter-bootstrap typescript twitter-bootstrap-3 webpack