You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

react-bootstrap导入useAccordionButton提示模块找不到如何解决?

问题根因

你当前安装的react-bootstrap版本为1.6.3,useAccordionButton钩子是react-bootstrap v2.0.0及以上版本才新增的API,1.x版本不存在react-bootstrap/AccordionButton这个导出路径,因此触发模块找不到的报错。

解决方案

你可以根据项目需求二选一:

方案1:升级react-bootstrap到2.x版本

你的项目已经安装了Bootstrap 5.1.1,刚好匹配react-bootstrap 2.x的依赖要求,操作步骤如下:

  • 卸载旧版本react-bootstrap:
npm uninstall react-bootstrap
  • 安装最新稳定版react-bootstrap:
npm install react-bootstrap@latest

升级完成后原有导入代码可以正常使用,无需修改导入语句。
如果升级后仍然报错,可以删除项目根目录的node_modules文件夹和package-lock.json文件,执行npm cache clean --force清理缓存后重新执行npm install即可。

方案2:保留1.6.3版本,替换为旧版兼容写法

1.x版本的Accordion组件无需使用useAccordionButton钩子,直接使用封装好的Accordion.Toggle组件实现按钮功能即可,示例用法:

import { Accordion, Button } from 'react-bootstrap';

// 组件内使用示例
<Accordion defaultActiveKey="0">
  <Accordion.Item eventKey="0">
    <Accordion.Header>折叠面板标题</Accordion.Header>
    <Accordion.Body>
      面板内容
    </Accordion.Body>
  </Accordion.Item>
  {/* 自定义切换按钮写法 */}
  <Accordion.Toggle as={Button} variant="primary" eventKey="0">
    点击切换面板状态
  </Accordion.Toggle>
</Accordion>

内容的提问来源于stack exchange,提问作者amortaza

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.03 12:54:05