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

React Native Android应用导入axios时崩溃求助

解决React Native Android导入axios后Metro Bundler 500错误

我之前在React Native项目里导入axios时也碰到过一模一样的Metro 500错误,折腾了好一阵才解决,给你几个亲测有效的排查方向:

  • 第一步:彻底清理缓存,重启服务
    缓存冲突是这类内部错误的高发原因,先把所有缓存清干净再试:

    # 重置Metro缓存
    npx react-native start --reset-cache
    # 清理Android构建缓存
    cd android && ./gradlew clean && cd ..
    # 重新启动Android项目
    npx react-native run-android
    
  • 第二步:降级axios到兼容版本
    部分新版本的axios可能和你的React Native版本存在兼容性问题。我当时把axios降到0.27.2就好了,这个版本在多数RN项目里都比较稳定:

    # 卸载当前axios
    npm uninstall axios
    # 安装稳定兼容版本
    npm install axios@0.27.2
    
  • 第三步:检查metro.config.js配置
    确保Metro的配置没有误排除axios相关模块。如果你的项目用了自定义metro配置,试试恢复默认配置再验证:

    const { getDefaultConfig, mergeConfig } = require('@react-native/metro-config');
    
    const config = {};
    
    module.exports = mergeConfig(getDefaultConfig(__dirname), config);
    

    如果有自定义resolver规则,检查是否不小心把axios的依赖给过滤掉了。

  • 第四步:重新安装所有依赖
    有时候依赖安装不完整也会导致Metro解析失败。可以删除node_modules和锁文件后重新安装:

    rm -rf node_modules package-lock.json yarn.lock
    npm install
    
  • 第五步:查看终端的详细错误日志
    错误提示里提到“请查看终端错误输出获取更多详情”,这才是关键!一定要去启动Metro的终端窗口里找具体的报错信息——比如某个模块缺失、语法错误或者路径问题,这些细节能帮你直接定位根源。我之前就是看到终端里提示某个axios依赖的模块没被正确打包,调整了metro的resolver配置就搞定了。

如果以上步骤都试过还是不行,把终端里的具体错误内容贴出来,大家就能帮你更精准地解决问题了。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.27 03:30:29