bounty将在3天后过期。回答此问题可获得+150的声望奖励。Francisco Aguilera正在寻找规范答案。
我使用bootstrap 5在我的NextJs应用程序我的安装像这样:npm install bootstrap
并通过_app.js将必要的文件导入到我的项目中,如下所示:
import 'bootstrap/dist/css/bootstrap.css'
...
useEffect(() => {
import("bootstrap/dist/js/bootstrap");
}, []);
现在的问题是,当我打开offcanvas模态并从那里单击链接时,offcanvas在页面更改后保持打开状态,而不是关闭。如何在路径名更改时以及仅在offcanvas处于活动状态时以编程方式关闭offcanvas?谢谢
注意:我没有使用React引导法
3条答案
按热度按时间vkc1a9a21#
最近我遇到了同样的问题,但我是这样让事情运转起来的。
首先,我不认为你导入bootstrap到你的nextjs应用程序的方式是正确的,但是什么工作的工作,但是我认为你应该导入bootstrap到你的nextjs应用程序的方式。
我不想让这个过程太长,所以让我们直接开始创建解决方案。首先,你必须创建一个自定义函数,当你点击链接时关闭offCanvas。
现在像这样创建链接并调用我们刚刚创建的函数
希望这对你有帮助
9w11ddsr2#
以下是最终对我起作用的方法:我导入的是单独的引导模块而不是所有模块,当你这样做的时候,我注意到全局
window.bootstrap
对象没有被设置,所以我创建了一个utility/bootstrap.ts
来正确地初始化我的引导子集:你需要安装
@bootstrap/types
来使类型导入正常工作,然后,在我的组件中,在我的例子中,它是Next Js'_app.tsx
我使用我的实用程序异步初始化引导:它允许bootstrap正确地找到offcanvas,而不是创建副本。
jtjikinw3#
像这样导入:-