我已经使用 Node 和 Gulp 安装了 Bootstrap 4,并且在运行应用程序时出现以下错误
未捕获的 ReferenceError:未定义 Popper
到目前为止,我只使用过 Bootstrap 网格系统,我还没有使用任何需要 Bootstrap JS 的东西。在我看来,Bootstrap 缺少某些东西,或者我没有正确安装它(老实说,这可能是我) - 有没有其他人遇到过同样的问题或根本不知道修复方法?
我已经使用 Node 和 Gulp 安装了 Bootstrap 4,并且在运行应用程序时出现以下错误
未捕获的 ReferenceError:未定义 Popper
到目前为止,我只使用过 Bootstrap 网格系统,我还没有使用任何需要 Bootstrap JS 的东西。在我看来,Bootstrap 缺少某些东西,或者我没有正确安装它(老实说,这可能是我) - 有没有其他人遇到过同样的问题或根本不知道修复方法?
由于我们的引导Beta 2的版本中,我们增加了两个新的DIST文件:bootstrap.bundle.js
和bootstrap.bundle.min.js
含有Popper.js
内
另外使用这个链接可以找到最新的 Popper.js 版本:https ://cdnjs.com/libraries/popper.js因为上面链接的版本(1.8.2)很旧,最新的是 1.12.9
顺便说一句,您应该选择 Popper.js 的 UMD 版本,因为它是 Bootstrap 使用的版本
使用bootstrap.bundle.js已有popper.js NPM路径'引导/距离/ JS / bootstrap.bundle.js' 。
对于那些在 Webpack 上遇到此问题的人:在您的入口文件中,
import 'bootstrap'确实会出现错误。您需要删除它并将其替换为import 'bootstrap/dist/js/bootstrap.bundle.js'
这已经足够了,您不需要单独导入 Popper。这适用于引导程序 4.0.0.beta2
就我而言,事实证明应该在bootstrap.js之前调用popper.js脚本。
<script src="https://../popper.js/1.12.3/umd/popper.min.js"></script>
<script src="https://../bootstrap/4.0.0-beta.2/js/bootstrap.min.js"></script>
我遇到了同样的问题,并且在一个简单的轮播上玩了半天。Mac 上的 Safari 没有正确提供反馈,因为库优先:
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-beta.2/css/bootstrap.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.12.6/umd/popper.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-beta.2/js/bootstrap.min.js"></script>
查看我遇到的错误“你需要在 BS 之前使用 JQ 才能工作”,所以我尝试了它,也放在Popper
BS 之前。
所以我在我的所有这些<head>
和繁荣中都奏效了。