我已经开始学习React出于好奇,想知道React和React Native之间的区别-虽然不能找到一个满意的答案使用谷歌。React和React Native似乎有相同的格式。它们的语法完全不同吗?


当前回答

简单的React Js是为web React Native是为跨平台移动应用程序!

其他回答

React Native是为移动应用程序,而React是为网站(前端)。这两个框架都是Facebook发明的。React Native是一个跨平台的开发框架,这意味着你可以为IOS和Android编写几乎相同的代码,而且它可以工作。我个人对React Native了解更多,所以我就到此为止。

react是一个核心框架,旨在构建基于响应式模式的组件,你可以把它看作是MVC中的V,尽管我想说的是,react确实带来了不同的感觉,特别是如果你不太熟悉响应式的概念。

ReactNative是另一层,旨在为Android和iOS平台提供一套常见的组件。所以代码看起来基本上与ReactJS相同,因为它是ReactJS,但它是在移动平台上原生加载的。你也可以根据操作系统将更复杂的和平台相关的API与Java/Objective-C/Swift连接起来,并在React中使用它。

首先是相似之处:React和React Native (RN)都是为了创建灵活的用户界面而设计的。这些框架有很多好处,但最基本的一点是它们是为ui开发而设计的。Facebook在React之后几年开发了RN。

反应: Facebook设计的这个框架几乎就像在HTML/XML中编写JavaScript,这就是为什么标签被称为“JSX”(JavaScript XML),类似于我们熟悉的类似HTML的标签,如<div>或<p>。React的一个标志是大写字母标记,它表示自定义组件,例如<MyFancyNavbar />,它也存在于RN中。然而,React使用DOM。DOM是为HTML而存在的,因此React是用于web开发的。

React Native: RN does not use HTML, and therefore is not used for web development. It is used for... virtually everything else! Mobile development (both iOS & Android), smart-devices (e.g. watches, TVs), augmented reality, etc. As RN has no DOM to interact with, instead of using the same sort of HTML tags used in React, it uses its own tags which are then compiled into other languages. For example, instead of <div> tags, RN developers use RN's built-in <View> tag, which compiles into other native code under the hood (e.g. android.view on Android; and UIView on iOS).

简而言之:它们非常相似(对于UI开发),但用于不同的媒介。

React Native主要是用JavaScript开发的,这意味着你需要开始的大部分代码都可以跨平台共享。React Native将使用本地组件进行渲染。React Native应用程序是用目标平台所需的语言开发的,iOS的Objective-C或Swift, Android的Java等。所编写的代码不是跨平台共享的,它们的行为各不相同。他们可以直接使用平台提供的所有功能,不受任何限制。

React是Facebook开发的一个开源JavaScript库,用于构建用户界面。它用于处理web和移动应用程序的视图层。ReactJS用于创建可重用的UI组件。它是目前It领域最流行的JavaScript库之一,它有强大的基础和庞大的社区支持。如果你学习ReactJS,你需要有JavaScript, HTML5和CSS的知识。

React-Native是一个用于开发Android和iOS应用程序的框架,它共享80% - 90%的Javascript代码。

而React.js是用于开发web应用程序的父Javascript库。

当你在React-Native中使用像<View>, <Text>这样的标签时,React.js使用像<div> <h1> <h2>这样的web html标签,这只是web/移动开发词典中的同义词。 对于React.js,你需要DOM来渲染html标签的路径,而对于移动应用程序:React-Native使用AppRegistry来注册你的应用程序。

我希望这是一个简单的解释React.js和React-Native的快速差异/相似之处。