概览
使用带有 Expo 插件的 Codex 来搭建 React Native 应用,遵循 Expo Router 和 Expo 原生包约定,借助 Expo Go 快速测试,并仅在应用确实需要时再迁移到 dev client 或 EAS 构建。
适合场景
- 希望先使用 Expo 原型设计或发布 React Native 应用,再考虑原生 IDE 工作流的开发者。
- 适用于需要 Codex 遵循 Expo 在路由、UI、包安装、构建和部署方面约定的 Expo Router 项目。
- 需要将 Web 应用迁移为移动应用的开发者。
构建 Expo 应用
使用 Expo 插件,基于以下想法用 Expo 构建一个 React Native 应用: [描述应用想法、目标用户和主要工作流] 要求: - 从 Expo Router 和 Expo 原生项目约定开始。 - 在创建自定义构建前,先尝试 `npx expo start` 和 Expo Go。 - 对 Expo 包使用 `npx expo install`,以确保依赖保持兼容。 - 在导航、表单、列表、空状态和加载状态中使用更具原生体验的 UI 模式。 交付内容: - 可运行的应用功能切片 - 运行命令 - 你使用的验证路径,包括 Expo Go、设备、模拟器、dev client 或 EAS
建议推理强度:中
从 Expo Go 开始
当你希望 Codex 将一个移动应用想法变成一个经过测试的 React Native 应用时,Expo 是一个很强的默认选择。实用的循环是先运行 expo start,接着在设备上使用 Expo Go,然后仅在应用需要自定义原生代码、商店分发或 Expo Go 无法运行的能力时,再使用 dev client 或 EAS 构建。
这样可以让 Codex 专注于应用工作流,而不是在第一轮就把时间花在原生 IDE 设置、模拟器设置、签名配置或构建配置上。
使用 Expo 插件
Expo 发布了一个 Expo 插件,它为 Codex 提供符合 Expo 原生方式的指导,涵盖 Expo Router、原生 UI、表单、导航、动画、数据获取、NativeWind 设置、Expo 模块、dev client、部署、升级以及 Codex Run action 连接。
当 Codex 需要构建新的 Expo 屏幕、添加包、连接 API 调用、准备 dev client,或让应用为 TestFlight、App Store、Play Store 或 EAS Hosting 做好准备时,请使用它。
如果任务需要查询最新的 Expo 文档、安装兼容的包、执行 EAS 构建和工作流操作、截图、与模拟器交互、使用 React Native DevTools 或获取 TestFlight 数据,也可以选择添加 Expo MCP Server。
迭代流程
- 让 Codex 检查仓库,并确认它是一个新的 Expo 应用还是现有的 Expo 项目。
- 从 Expo Router 和 Expo Go 开始,并在添加 Expo 包时使用
npx expo install。 - 让 Codex 构建一个完整工作流,包含更具原生体验的导航、加载状态、空状态和错误状态。
- 通过最快可用的路径进行验证,例如设备上的 Expo Go 或模拟器,然后仅在需要时再迁移到 dev client 或 EAS。
