React Native 是一个基于 JavaScript 的开源框架,支持使用一套代码构建 iOS 、Android 和 Web 应用。Expo 则是围绕 React Native 构建的一套工具和服务,提供了一种更简便的开发体验。
核心对比
特性 | React Native CLI | Expo |
---|---|---|
学习曲线 | 较陡,需要配置 Xcode 或 Android Studio | 平缓,使用 Expo Go 即可快速启动 |
项目启动速度 | 慢,需要较多依赖安装 | 快,仅需 Node.js 和手机或模拟器 |
社区支持和扩展性 | 强,自由配置 | 强,但受限于 Expo 生态 |
构建和打包 | 手动配置 | 提供托管的打包服务 |
原生模块支持 | 灵活,但需要手动集成 | 有限,但支持 EAS (Expo Application Services) 解决方案 |
适用场景
- React Native CLI:适合有移动开发经验或对原生模块有较高定制化需求的开发者。
- Expo:更适合快速构建 MVP(Minimum Viable Product)或移动开发新手。
搭建 Expo 项目
创建项目
使用以下命令快速创建一个 Expo 项目:
lua
create-expo-app expo-app --template blank
创建项目后,进入项目目录并安装web依赖:
bash
cd expo-app
npx expo install react-dom react-native-web @expo/metro-runtime
启动开发服务器:
sql
npx expo start
学习文档
- 英文文档 docs.expo.dev/
- 中文文档 expo.nodejs.cn/