使用 require.js 加载时,bootstrap 4 中加载 popper.js 时出错

Hoa*_*ang 2 javascript requirejs typescript bootstrap-4

我通过 npm 安装了 bootstrap 4、jquery、popper。当我加载网站时,它在控制台中显示有关无法获取文件 popper.js 的错误,我再次检查是否看到 require.js 加载了一个文件 popper.js,并且注意到引导程序未找到一个文件 popper.js。他们有不同的道路。文件成功的路径为:http://localhost:9000/Libs/popper.js/dist/umd/popper.js文件失败的路径为http://localhost:9000/popper.js

下图中,图1显示了库js的配置路径。图2显示库加载成功,图3提示popper.js未加载。

我不明白为什么 bootstrap 无法识别 popper.js 是由 requie.js 加载的。

每个人都可以帮助我向我解释问题。谢谢!

在此输入图像描述

小智 5

尝试使用:

bootstrap.bundle.js
Run Code Online (Sandbox Code Playgroud)

或者:

bootstrap.bundle.min.js
Run Code Online (Sandbox Code Playgroud)

https://getbootstrap.com/docs/4.0/getting-started/contents/

文档显示提到的这两个文件包含 popper,因此您不需要它。

如果这不起作用,请在源文件中搜索 /popper.js,这可能就像在其他地方修复引用一样简单。

而不是这样做:

require(["bootstrap"], function(bootstrap) {
    // do nothing
});
Run Code Online (Sandbox Code Playgroud)

尝试先加载 popper:

require(["popper"], function(popper) {
    window.Popper = pop
    require(["bootstrap"]);
});
Run Code Online (Sandbox Code Playgroud)

或者,您可以使用 CDN 链接。Bootstrap 建议在包含已编译的 bootstrap 之前使用 CDN 版本。

<script src="https://code.jquery.com/jquery-3.2.1.slim.min.js" integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN" crossorigin="anonymous"></script>
Run Code Online (Sandbox Code Playgroud)