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

React-Native Storybook打开即崩溃并无限输出报错求助

解决React Native 0.70.5 + Storybook 5.3.27启动崩溃问题

问题分析

你碰到的错误根源是Storybook 5.x版本与React Native 0.70.x的core-js依赖版本不兼容,导致模块循环引用或导出格式不匹配,触发栈溢出和函数调用失败。

可行解决方案

方案1:升级Storybook到兼容版本

Storybook 5.3.27是较旧版本,对RN 0.70+的支持不足。建议升级到适配RN 0.70的版本,比如@storybook/react-native@6.5.x或更高:

  • 卸载旧版本:
    npm uninstall @storybook/react-native @storybook/addons @storybook/react-native-server
    
  • 安装兼容版本(以6.5.16为例):
    npm install @storybook/react-native@6.5.16 @storybook/addons@6.5.16 --save-dev
    
  • 重新配置.storybook/main.js等初始化文件,对应版本的官方配置调整结构即可。

方案2:锁定core-js版本

如果暂时没法升级Storybook,可以强制指定兼容的core-js版本,避免RN自带的高版本core-js与Storybook依赖冲突:

  • 在package.json中添加resolutions字段:
    "resolutions": {
      "core-js": "3.20.3"
    }
    
  • 安装依赖:
    • yarn用户直接运行:yarn install
    • npm用户先装npm-force-resolutions:
      npm install npm-force-resolutions --save-dev
      
      再在package.json的scripts里加:
      "preinstall": "npx npm-force-resolutions"
      
      最后执行npm install

方案3:临时禁用LogBox(仅调试用)

第二条错误是LogBox渲染日志时触发的,临时禁用能先看到原始错误,但解决不了根本问题:
在项目入口文件(比如index.js)顶部加:

import { LogBox } from 'react-native';
LogBox.ignoreAllLogs();

验证步骤

  1. 清除缓存:
    npx react-native start --reset-cache
    
  2. 重新构建运行App:
    npx react-native run-android # 或 run-ios
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.11 19:01:09