主要观点总结
本文主要介绍了ohos_react_native的开源情况,它是React Native的社区支持版本,基于React Native 0.72.5版本,并适配了鸿蒙操作系统。文章还详细描述了ohos_react_native的关键特性,包括对新架构的支持、C-API的性能优势、TurboModule的作用以及和Flutter鸿蒙版的区别等。
关键观点总结
关键观点1: ohos_react_native的开源及关键特性
ohos_react_native是React Native的社区支持版本,基于React Native 0.72.5,支持鸿蒙操作系统。它支持React Native的新架构的大部分能力,包括Interop Layers等。与Flutter鸿蒙版相比,它基于React Native 0.72.5,拥有更高的灵活性。
关键观点2: C-API的性能优势
ohos_react_native使用C-API进行渲染,提高了组件渲染的效率。C-API的性能收益包括最小化C端使用、无跨语言的组件创建和属性设置、无需数据格式转换以及在CPP侧直接使用对应的数据进行处理等。
关键观点3: TurboModule的作用
TurboModule是React Native中用于JS和原生代码进行交互的模块。在ohos_react_native中,TurboModule分为cxxTurboModule和ArkTSTurboModule,分别提供不同的功能。
关键观点4: ohos_react_native的开源意义
ohos_react_native的开源为RN开发者适配鸿蒙提供了帮助。它的完善度和内容丰富度都很高,经过一年的修补,整体完成度很好。
文章预览
距离鸿蒙 Next 宣布一年后,除了 Flutter 的鸿蒙支持之外,React Native 的社区支持的 ohos_react_native 也终于在 OpenHarmony-SIG 对外开源,并且和 Flutter 不同在于,本次开源的版本是基于 React Native 0.72.5 。 ohos_react_native 基于 0.72.5,也就是距离 0.76 New Architecture Default 虽然还有几个版本之差,但是它确确实实支持 New Architecture 里的大部分能力,例如 "Interop Layers” (官方强制新架构并主要迁移该算支持吧?),和最新版本相比,也就是不支持 Bridgeless Mode 和 Suspense & Transitions 而已。 这也是和 Flutter 鸿蒙版的最大不同之处,基于 React Native 0.72.5 的 ohos_react_native 可以使用 New Architecture 里的大部分支持,而 Flutter 目前还未兼容至 Impeller 。 可以看到, ohos_react_native 在 React Native 的新架构的基础上进行了鸿蒙化的适配,也就是类似 JSI、Fabric、TurboModule 、CodeGen
………………………………