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

使用React Native CLI构建的项目能否通过Expo CLI运行?

React Native CLI项目迁移至Expo运行操作指南

可行性说明

完全可行,根据项目是否包含自定义原生代码分为两种适配方案:

  • 无自定义原生代码、所有第三方依赖均兼容Expo Go:可直接适配后用Expo Go运行
  • 包含自定义原生代码/依赖不兼容Expo Go的原生库:可使用Expo开发客户端(Dev Client)构建自定义运行环境后运行

正确迁移流程

  1. 不要直接复用原项目的package.json,先通过npx create-expo-app新建空白Expo项目,选择和你原项目RN版本匹配的Expo SDK版本,避免版本不兼容报错
  2. 迁移原项目的业务代码文件(组件、页面、工具类、静态资源等)至新Expo项目的对应目录
  3. 逐个核对原项目package.json里的第三方依赖:
    • 基础依赖(react、react-native)不要改动,保持Expo项目默认的版本即可
    • 其他第三方依赖先通过npx expo install [依赖名]安装,这个命令会自动安装匹配当前Expo SDK版本的依赖版本,避免版本冲突
    • 如果遇到依赖提示不兼容Expo Go,可通过配置Expo Config Plugin适配,或者改用Expo Dev Client方案
    • 如果确认需要使用自定义原生代码,执行npx expo prebuild生成原生工程目录,再通过npx expo run:android/npx expo run:ios构建自定义开发客户端即可运行
  4. 迁移原项目的配置项:比如应用名称、包名、权限配置等,对应修改Expo项目的app.json配置
  5. 执行npx expo start启动项目,根据控制台提示的报错逐一调整剩余适配问题

此前操作报错的核心原因

直接全量迁移原RN CLI项目的package.json会导致react、react-native等核心依赖版本和Expo SDK要求的版本不匹配,同时很多原生依赖默认是适配RN CLI的裸项目,没有做Expo兼容处理,自然会出现大量运行时报错。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 17:27:03