【发布时间】:2023-02-16 00:17:16
【问题描述】:
美好的一天,当我点击里面的链接时,我想隐藏 bootstrap-5/Offcanvas。这是 Offcanvas:
//Button activate Offcanvas
<button class="navbar-toggler" type="button" data-bs-toggle="offcanvas" data-bs-target="#offcanvasDarkNavbar"
aria-controls="offcanvasDarkNavbar">
<span class="navbar-toggler-icon"></span>
</button>
//Offcanvas
<div class="offcanvas offcanvas-end text-bg-dark" tabindex="-1" id="offcanvasDarkNavbar"
aria-labelledby="offcanvasDarkNavbarLabel">
<div class="offcanvas-header">
<h5 class="offcanvas-title" id="offcanvasDarkNavbarLabel">Menu</h5>
</div>
<div class="offcanvas-body">
<ul class="nav nav-pills flex-column mb-sm-auto mb-0 align-items-center align-items-sm-start" id="menu">
<li class="nav-item">
<router-link to="/about" class="nav-link link-info align-middle px-0">
<i class="fs-4 bi-house"></i> <span class="ms-1 d-none d-sm-inline">Home</span>
</router-link>
</li>
</ul>
</div>
</div>
在官方文档中,他们说:
您可以使用构造函数创建一个 offcanvas 实例,例如: var myOffcanvas = document.getElementById('myOffcanvas') 或者 var bsOffcanvas = new bootstrap.Offcanvas(myOffcanvas)
然后使用方法“隐藏”。我尝试在路由器链接中使用 @click="hideThisCanvas" 然后
methods: { hideThisCanvas(){ let myOffcanvas = document.getElementById('offcanvasDarkNavbar') myOffcanvas.hide(); } }但它给出了错误
myOffcanvas.hide is not a function。请帮忙!
【问题讨论】:
-
最好的方法可能是使用一些基于状态的东西,比如 bootstrap-vue:bootstrap-vue.org 使用文档选择器不是任何现代 JS 框架 tbh 的方法。
标签: javascript vuejs3 hide bootstrap-5