React Native
你可能会说
一套代码同时上 iOS 和安卓,真能做到吗?
用 React 写原生的手机 AppUI 渲染成真正的原生控件,JS 逻辑跑在独立线程;跨端方案里生态和招聘量最大。写起来像 React,但排错要懂原生。
也常被叫作RN跨端开发
什么时候选它
- 已有 React 团队,要同时做 iOS / Android
- 需要相机、蓝牙、推送等原生能力,又要快速迭代
- 内容型、工具型 App,动画不极端
什么时候别选
- 重度 3D、游戏、复杂手势动画
- 要一套代码覆盖 Web + 桌面 + 移动的全部场景
- 团队没有原生排错能力,App 又要长期深挖性能
容易混在一起 · 怎么分
React Native≠Flutter
RN 复用 React 与原生控件,生态大、包体小;Flutter 自绘渲染,双端外观最一致。
React Native≠Web App
RN 产物是原生 App,能调系统能力;Web App 只是网页,能力受浏览器限制。
Q面试会问什么
- 问:和 Web React 的区别?
答:渲染层不同。RN 通过 JSI / 桥调用原生控件,没有 DOM 和 CSS,样式是 Flex 子集。 - 问:新架构改了什么?
答:Fabric 渲染器、TurboModules、JSI 减少桥接序列化开销,渲染和原生调用更直接。
延伸阅读 · 权威出处