Skip to content

React Native

React Native 使用 React 和 JavaScript/TypeScript 构建 Android、iOS 等平台的原生应用。组件最终映射为平台原生视图,不依赖浏览器 DOM。

运行结构

React Native 应用可分为三个部分:

  • JavaScript/TypeScript:组件、状态与业务逻辑;
  • React Native 运行时:协调 React 更新、原生组件和平台 API;
  • 原生工程:Android Gradle 工程与 iOS Xcode 工程,负责应用启动、权限、签名和打包。

业务代码通常可以跨平台复用,但交互规范、权限、系统能力和发布流程仍需分别适配 Android 与 iOS。

Expo

Expo 是围绕 React Native 提供的开发框架与服务集合,包含项目脚手架、路由、原生模块、开发客户端和构建发布服务。

方式适用场景限制
Expo Go快速验证界面和 JavaScript 逻辑只能使用客户端已内置的原生模块
Development build日常项目开发原生依赖或配置变化后需要重新构建
本地原生工程调试或修改 Android、iOS 原生代码需要 Android Studio 或 Xcode 环境

正式项目优先使用 development build。Expo Go 更适合作为无需编译的快速试用环境。

核心差异

Web ReactReact Native
divbuttoninputViewPressableTextInput
CSS 文件与级联JavaScript 样式对象,无全局级联
浏览器 DOM APIReact Native 或 Expo 提供的平台 API
URL 路由原生导航栈、标签页与 Deep Link
浏览器发布Android/iOS 构建、签名与商店发布

参考资料

基于 MIT 许可发布