我有一个导航栏下拉在我的页眉和一个在我的页面的主体。目前,导航栏下拉可以工作。但是,当我点击我设置为触发另一个下拉菜单的图标时,什么也没有发生。
导航条下拉:
<nav class="navbar navbar-expand-lg">
<div class="collapse navbar-collapse" id="desktop-header">
<ul class="navbar-nav">
<li class="nav-item dropdown pe-4">
<a class="nav-link dropdown-toggle text-dark fw-bold" href="#" role="button" data-bs-toggle="dropdown">Log</a>
<ul class="dropdown-menu">
<li>...</li>
</ul>
</li>
</ul>
</div>
</div>
标题外的下拉列表:
<div class="dropdown d-inline">
<a href="#" role="button" data-bs-toggle="dropdown">
<span class="mdi mdi-18px mdi-flag-outline text-dark me-2"></span>
</a>
<ul class="dropdown-menu">
<li>...</li>
<li>...</li>
</ul>
</div>
这是我试图打开第二个下拉菜单时得到的控制台错误:
bootstrap.source.js:2174 Uncaught TypeError: Popper__namespace.createPopper is not a function
at Dropdown._createPopper (bootstrap.source.js:2174:1)
at Dropdown.show (bootstrap.source.js:2063:1)
at Dropdown.toggle (bootstrap.source.js:2041:1)
at HTMLAnchorElement.<anonymous> (bootstrap.source.js:2400:1)
at HTMLDocument.handler (bootstrap.source.js:411:1)
这是我如何包括Bootstrap JS,直接从v. 5.2。x文档:
<script
src="https://cdn.jsdelivr.net/npm/bootstrap@5.2.3/dist/js/bootstrap.bundle.min.js"
integrity="sha384-kenU1KFdBIe4zVF0s0G1M5b4hcpxyD9F7jL+jjXkk+Q2h455rYXK/7HAuoJl+0I4"
crossorigin="anonymous"
type="application/json">
</script>
我也试过分别包括Popper和Bootstrap,还是按照官方文档。
此外,当我不包括type="application/json"
时,主体(导航条外)中的下拉菜单工作,但导航条下拉菜单不起作用。相反,当我包含type="application/json"
时,导航栏下拉菜单工作,但另一个不工作。
我如何让这两个下拉正确工作?
在我的Rails布局文件中,我有两个部分——content_for :head_javascripts
和content_for :body_javascripts
。
在:body_javascripts
中,我试图根据文档的说明包括Popper和Bootstrap。
通过添加以下行:
<%= javascript_include_tag 'railsapp' %>
<%= javascript_include_tag 'libs/bootstrapapp' %>
到:head_javascripts
部分并删除:body_javascripts
,我得到了两个下拉菜单的工作。
任何关于为什么这个解决方案有效的见解,而不是当我尝试在:body_javascripts
中包括Bootstrap时,欢迎。