React Native (简称RN)是Facebook于2015年4月开源的跨平台移动应用开发框架,是Facebook早先开源的UI框架 React 在原生移动应用平台的衍生产物,目前支持iOS和安卓两大平台。RN使用Javascript语言,类似于HTML的JSX,以及CSS来开发移动应用,因此熟悉Web前端开发的技术人员只需很少的学习就可以进入移动应用开发领域。具有,react native技术,插件化,热修改等技术



React Native使你能够在Javascript和React的基础上获得完全一致的开发体验,构建世界一流的原生APP。


React Native着力于提高多平台开发的开发效率 —— 仅需学习一次,编写任何平台。(Learn once, write anywhere)


Facebook已经在多项产品中使用了React Native,并且将持续地投入建设React Native。


React Native主要特性如下:


  • 原生的iOS组件

React Native主张“Learn once, write everywhere”而非其他跨平台工具一直宣扬的“Write once, run everywhere”。通过React Native,开发者可以使用UITabBar、UINavigationController等标准的iOS平台组件,让应用界面在其他平台上亦能保持始终如一的外观、风格。


  • 异步执行

JavaScript应用代码和原生平台之间所有的操作都采用异步执行模式,原生模块使用额外线程,开发者可以解码主线程图像、后台保存至磁盘、无须顾忌UI等诸多因素直接度量文本设计布局。


  • 触摸处理

React Native引入了一个类似于iOS上Responder Chain响应链事件处理机制的响应体系,并基于此为开发者提供了诸如TouchableHighlight等更高级的组件。


-------------------------------------------------


native主要体现在:


native的原声控件有更好的体验


2.有更好的手势识别


3.有更合适的线程模型,尽管Web Worker可以解决一部分问题,但如图像解码,文本渲染仍然是无法多线程的渲染,影响到Web的流畅性



React Native开发注意事项


1.只支持iOS7以上的,安卓仅支持Android4.1以上版本


2.由于RN版本速度很快,如果没有深厚的JavaScript基础,建议选择:a。功能始终,交互一般,不需要特别多的原声支持。


b。对于部分复杂的应用,可以考虑原生+React Native混合开发