Expo管理的React Native项目Stack Navigator在iOS设备无法运行问题求解
核心疑问解答
如果你使用的是Expo 托管工作流(Managed Workflow),不需要手动安装Pods,所有原生依赖的适配和配置都会由Expo Go客户端、Expo构建服务自动完成,因此iOS端功能失效和你没有安装Pods没有任何关联。
常见问题排查&解决方法
- 检查必要依赖是否安装完整
React Navigation在Expo环境下运行除基础导航包外,还需要安装两个原生适配依赖,执行以下命令安装即可:npx expo install react-native-screens react-native-safe-area-context
多数iOS端导航失效的情况都是漏装这两个依赖导致的,安卓端对这两个依赖的缺失容错性更高,所以会出现安卓正常iOS异常的情况。 - 清空项目缓存重启
依赖安装完成后执行命令清空缓存重启项目,避免缓存导致的依赖加载异常:npx expo start --clear - 匹配Expo Go客户端版本
确认你iOS设备上安装的Expo Go客户端版本和项目使用的Expo SDK版本一致,版本不匹配会导致原生模块无法正常加载,直接更新到对应版本即可修复。 - 无Mac设备的iOS打包方案
如果你需要打包iOS生产包,不需要本地Mac环境操作Pods和Xcode,直接使用EAS Build云端构建服务即可,在Windows/Linux环境下提交构建任务就能获取iOS安装包。
代码说明
你提供的App.js逻辑不存在语法错误,不需要调整代码逻辑,按照上述步骤排查依赖和缓存问题即可。
内容的提问来源于stack exchange,提问作者edwin
相关产品推荐
相关产品推荐

