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

Next.js+React使用Storybook报Couldn't find story matching错误

问题根因

「Couldn't find story matching」报错(翻译:找不到匹配的story)的本质是SpaceAvailability对应的story文件加载解析失败,Storybook无法识别文件内导出的story项,由两个明确问题导致:

  • 导入逻辑错误:story文件直接从.test后缀的测试文件导入mock数据。测试文件依赖Jest等测试框架注入的全局API、测试专用依赖,Storybook的构建环境默认没有注入这些运行时能力,导入后会直接触发引用错误,导致整个story模块加载中断,这是最核心的原因。
  • 代码笔误:第二个story导出的变量名为WeekStartsSunday,但后续绑定args时错误写为WeekStartsMonday.args,该问题不会直接导致加载失败,但会造成Sunday的story无有效参数、Monday的story参数被意外覆盖。
修复步骤
  • 抽离公共mock数据:把mockAvailability从SpaceAvailability.test测试文件移到同目录下独立的非测试文件,比如命名为_mockData.js,之后在story文件、测试文件里分别从这个独立文件导入mock数据,禁止在story文件中导入任何.test/.spec后缀的测试文件。
  • 修正笔误:将第二个story的args绑定代码改为对应正确的变量名,修正后片段如下:
export const WeekStartsSunday = Template.bind({});
WeekStartsSunday.args = {
  availability: mockAvailability,
  weekStartsOnMonday: false,
};
  • 校验扫描规则:如果前两步完成后仍报错,检查该story文件的命名、存放路径是否匹配项目.storybook/main.js中stories字段配置的扫描规则,确保文件后缀、存放路径在Storybook的扫描范围内。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.30 12:48:09