【发布时间】:2015-03-28 18:08:25
【问题描述】:
是否可以使用 Facebook 的 React JavaScript 框架为 iOS 和 Android 构建应用程序,提供与原生应用程序几乎相同的性能?
【问题讨论】:
标签: android ios reactjs reactjs-native
是否可以使用 Facebook 的 React JavaScript 框架为 iOS 和 Android 构建应用程序,提供与原生应用程序几乎相同的性能?
【问题讨论】:
标签: android ios reactjs reactjs-native
直到 2015 年 1 月,使用在 WebView 组件内运行 React JavaScript 部分的混合方法一直是唯一的选择,使用像 Apache Cordova 这样的框架,这种方法具有典型的缺点。 JavaScript 的垃圾收集等任务会减慢应用的原生部分,导致跳帧,让应用感觉迟缓。
1 月 28 日Facebook announcedReact.js Conf 2015 上的 React Native 项目。 React Native 将是一个开源项目,它支持使用 React 为 iOS 和 Android 构建的 HTML5 应用程序的原生渲染。 Facebook 内部已使用 React Native 构建应用程序,例如 iOS 版 Facebook Groups 应用程序。
从技术上讲,React Native 在后台线程中运行 React 应用程序的 JavaScript 代码。收集对虚拟 dom 的更新,所有更改都通过 API 发送到应用程序的本机部分。通过这样做,React Native 通过让应用等待未完成的 JavaScript 操作来避免降低应用的 FPS 速率。
Facebook 宣布 React Native 的源代码将在 2015 年 React.js Conf 后不久在 Github 上提供。会议参与者将于 2015 年 1 月 29 日访问 Github 存储库。
更新:包含一些技术细节的第二个演示视频React.js Conf 2015 Keynote 2 - A Deep Dive into React Native 现已在 Youtube 上发布。在演示期间,Facebook 宣布 iOS 和 Android 的布局和盒子模型引擎渲染的源代码可在 Github 上的以下存储库中获得:github.com/facebook/css-layout
用于 React Native 的 iOS 版动画库托管在 https://github.com/facebook/pop
更新 2:源代码现已在 Github 上提供 React Native 源代码现已提供https://github.com/facebook/react-native。
更新 3:React 团队于 2015 年 9 月发布了 Android 支持 https://code.facebook.com/posts/1189117404435352/react-native-for-android-how-we-built-the-first-cross-platform-react-native-app/
可以在此处找到开始使用 React Native Android 开发的说明: https://facebook.github.io/react-native/docs/android-setup.html
【讨论】:
如上所述,您只能在 iOS 上使用 React Native。
如果你想在两个平台上都使用 React:
【讨论】: