编程

React Native 简介

771 2022-11-10 15:44:16

React Native 是目前流行的跨平台移动应用开发框架之一。React Native 将原生开发的最佳部分与 React 相结合, 致力于成为构建用户界面的顶尖 JavaScript 框架。你随时都可以把 React Native 无缝集成到已有的 Android 或 iOS 项目,当然也可以完全从头重写。

React Native 使你只使用JavaScript也能编写原生移动应用。 它在设计原理上和React一致,通过声明式的组件机制来搭建丰富多彩的用户界面。

import React, { Component } from 'react';
import { Text, View } from 'react-native';

class WhyReactNativeIsSoGreat extends Component {
  render() {
    return (
      <View>
        <Text>
          如果你喜欢在Web上使用React,那你也肯定会喜欢React Native.
        </Text>
        <Text>
          基本上就是用原生组件比如'View'和'Text'
          来代替web组件'div'和'span'。
        </Text>
      </View>
    );
  }
}

为什么要用React Native

1.跨平台兼容性

  • 使用React Native,您可以编写一次代码并多次部署到Android和iOS操作系统。对于创业公司来说,这样可以节省成本,并为程序员腾出时间完成其他重要任务。

2、React Native卓越性能

  • 除了React Native外跨平台框架还有:Cordova、AppCan、APICloud、Phonegap、Ionic、Dcloud等,这些框架基本都是在一个WebView上进行渲染,也就是说他们的性能最多就是原生app中WebView的性能。而ReactNaitve是采用JS桥接加Native桥接两个方式合并起来的。React Native产出的并不是“网页应用”, 或者说“HTML5应用”,又或者“混合应用”。 最终产品是一个真正的移动应用,从使用感受上和用Objective-C或Java编写的应用相比几乎是无法区分的。 React Native所使用的基础UI组件和原生应用完全一致。 你要做的就是把这些基础组件使用JavaScript和React的方式组合起来。

3、社区力量

  • 有着Facebook的支撑,相信会发展的很好。目前github的星数已经快7 万了,还有很多开源的组件和框架可以使用。

4、学习成本低

  • 用的是react的框架和css的布局,有前端开发经验降低了不少学习成本,也大大减少了代码量。但是对于iOS或者安卓开发者来说,刚开始接触的时候,得接受一些思想上的转变。

5、调试方便

  • ipa安装好之后,就不需要频繁编译了,只需要reload一下!
    把js代码从云服务器下载下来就可以呈现改变代码后的效果。而且RN支持hotReload,在调试界面的时候非常方便,修改代码之后保存,界面就自动跟着变化,这一点在调试的时候很方便,不过有时候有点慢,需要reload。Chrome在线调试也可以打断点,看日志。

6、热更新

  • 频繁的app升级会让用户很烦,毕竟繁多的业务迭代,每次都通过APP审核,也算是噩梦。而且苹果的审核也很麻烦。现在很多大型app都使用了RN,通过微软提供的codepush可以很简单的实现热更新。