“createPopper”不是我们使用引导程序时发生的函数错误 需要popper.js脚本但不在页面上加载它的组件或 在引导脚本之后加载它。要解决此错误,请包括引导程序 在运行 JavaScript 代码之前捆绑脚本。

这是一个工作示例,它加载引导捆绑包脚本来解决 错误。
- html>
- <html lang="en">
- <head>
- <meta charset="UTF-8" />
-
-
- <link
- href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/css/bootstrap.min.css"
- rel="stylesheet"
- integrity="sha384-1BmE4kWBq78iYhFldvKuhfTAU6auU8tT94WrHftjDbrCEXSU1oBoqyl2QvZ6jIW3"
- crossorigin="anonymous"
- />
- head>
-
- <body>
-
- <div class="dropdown">
- <button
- class="btn btn-secondary dropdown-toggle"
- type="button"
- id="dropdownMenuButton1"
- data-bs-toggle="dropdown"
- aria-expanded="false"
- >
- Dropdown button
- button>
- <ul class="dropdown-menu" aria-labelledby="dropdownMenuButton1">
- <li><a class="dropdown-item" href="#">Actiona>li>
- <li><a class="dropdown-item" href="#">Another actiona>li>
- <li><a class="dropdown-item" href="#">Something else herea>li>
- ul>
- div>
-
-
- <script
- src="https://code.jquery.com/jquery-3.6.0.min.js"
- integrity="sha256-/xUj+3OJU5yExlq6GSYGSHk7tPXikynS7ogEvDej/m4="
- crossorigin="anonymous"
- >script>
-
-
-
- <script
- src="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/js/bootstrap.bundle.min.js"
- integrity="sha384-ka7Sk0Gln4gmtz2MlQnikT1wXgYsOg+OMhuP+IlRH9sENBO0LRn5q+8nbTov4+1p"
- crossorigin="anonymous"
- >script>
-
-
- <script src="index.js">script>
- body>
- html>
引导捆绑包脚本包括:
我们需要的脚本,以便添加功能 下拉列表、模态、工具提示、弹出框等。popper.js
JavaScript插件。bootstrap.min.js
popper.min.jsbootstrap.min.jspopper.min.jsbootstrap.min.js
我们按以下顺序在页面上加载脚本:
index.js下面是示例中文件的内容。index.js
- const myDropdown = document.getElementById('dropdownMenuButton1');
-
- myDropdown.addEventListener('show.bs.dropdown', function () {
- console.log('Dropdown shown');
- });
我们在下拉菜单中添加了一个事件侦听器,以便每次都打印消息 将显示下拉列表。
popper.min.jsbootstrap.min.jspopper.min.jsbootstrap.min.js
下面是单独加载脚本的完整示例。
- html>
- <html lang="en">
- <head>
- <meta charset="UTF-8" />
-
-
- <link
- href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/css/bootstrap.min.css"
- rel="stylesheet"
- integrity="sha384-1BmE4kWBq78iYhFldvKuhfTAU6auU8tT94WrHftjDbrCEXSU1oBoqyl2QvZ6jIW3"
- crossorigin="anonymous"
- />
- head>
-
- <body>
- <div class="dropdown">
- <button
- class="btn btn-secondary dropdown-toggle"
- type="button"
- id="dropdownMenuButton1"
- data-bs-toggle="dropdown"
- aria-expanded="false"
- >
- Dropdown button
- button>
- <ul class="dropdown-menu" aria-labelledby="dropdownMenuButton1">
- <li><a class="dropdown-item" href="#">Actiona>li>
- <li><a class="dropdown-item" href="#">Another actiona>li>
- <li><a class="dropdown-item" href="#">Something else herea>li>
- ul>
- div>
-
-
- <script
- src="https://code.jquery.com/jquery-3.6.0.min.js"
- integrity="sha256-/xUj+3OJU5yExlq6GSYGSHk7tPXikynS7ogEvDej/m4="
- crossorigin="anonymous"
- >script>
-
-
- <script
- src="https://cdn.jsdelivr.net/npm/@popperjs/core@2.10.2/dist/umd/popper.min.js"
- integrity="sha384-7+zCNj/IqJ95wo16oMtfsKbZ9ccEh31eOz1HGyDuCQ6wgnyJNSYdrPa03rtR1zdB"
- crossorigin="anonymous"
- >script>
-
-
- <script
- src="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/js/bootstrap.min.js"
- integrity="sha384-QJHtvGhmr9XOIpI6YVutG+2QOK9T+ZnN4kzFN1RtK3zEFEIsxhlmWl5/YESvpZ13"
- crossorigin="anonymous"
- >script>
-
-
- <script src="index.js">script>
- body>
- html>
我们在脚本之前加载了脚本, 否则我们会得到“createPopper 不是函数”类型错误。popper.min.jsbootstrap.min.js
我更喜欢使用 Bootstrap 捆绑包,因为它更直观并减少了 重构时可能出错的事情。
“createPopper”不是我们使用引导程序时发生的函数错误 需要popper.js脚本的组件,但我们没有将其加载到页面上 或在引导脚本之后加载它。要解决此错误,请包括 在运行 JavaScript 代码之前引导捆绑脚本。