webpack 外部 jqueryui 和 bootstrap

Posted

技术标签:

【中文标题】webpack 外部 jqueryui 和 bootstrap【英文标题】:webpack externals jqueryui and bootstrap 【发布时间】:2017-06-20 09:17:11 【问题描述】:

如何在 webpack 配置中配置 externals 部分以从输出中排除 jqueryui 和 bootstrap?

webpack 配置:

externals: 
    'jquery': 'jQuery',
    'jqueryui': 'jqueryui',
    'bootstrap': 'bootstrap'

打字稿代码:

import 'jquery';
import 'jqueryui';
import 'bootstrap';

上述所有 3 个类型的定义都在 @types/ 文件夹中。 jquery 工作正常,但其他两个不工作。在运行时,即使所有 3 个都被带入带有脚本标记的 .html 文件中,最后两个也没有找到。 jquery webpack 配置对我来说很清楚。 jquery 是库名称。 jQuery 是全局变量名。令我困惑的是如何使“lib: global-var”语法适用于 jqueryui 和 bootstrap,因为它们都没有全局变量。

【问题讨论】:

【参考方案1】:

如果它对某人有帮助,这是我在互联网搜索两天后使其工作的方法:

externals: 
    ...
    'jqueryui': true,
    'bootstrap': true

【讨论】:

【参考方案2】:

":true" 方法实际上不起作用。我收到“找不到 jqueryui”错误。然后我尝试了这个:

externals 
    ...
    'jqueryui': 'jQuery',
    'bootstrap': 'jQuery'

然后它起作用了。这两个库扩展了 $.这可行,但我猜不是以预期的方式,因为 __webpack_require_ 不会尝试确保它们存在。它只取决于jQuery的存在。然而,这满足了 TypeScript 和 webpack 捆绑过程。

【讨论】:

以上是关于webpack 外部 jqueryui 和 bootstrap的主要内容,如果未能解决你的问题,请参考以下文章

Webpack 和外部库

vuecli webpack 外部js 怎么导入

webpack 安可和 jquery ui (dateRangeSlider)

使用带有外部 Json 的 jquery UI 自动完成

使用 WebPack + TypeScript 定义导入的外部模块

Webpack 和外部库:ProvidePlugin vs entry vs global import?