React Native 和 React 有什么区别?

我开始出于好奇而学习 React,并想知道 React 和 React Native 之间的区别 - 尽管使用 Google 找不到令人满意的答案。React 和 React Native 似乎具有相同的格式。它们有完全不同的语法吗?


答案 1

ReactJS是一个JavaScript库,支持前端Web和在服务器上运行,用于构建用户界面和Web应用程序。它遵循可重用组件的概念。

React Native是一个移动框架,它利用主机上可用的JavaScript引擎,允许您在JavaScript中为不同的平台(iOS,Android和Windows Mobile)构建移动应用程序,允许您使用ReactJS构建可重用的组件并与本机组件进行通信进一步解释

两者都遵循JavaScript的JSX语法扩展。它编译为引擎盖下的调用。JSX深度介绍React.createElement

两者都是由Facebook开源的。


答案 2

这是 React 项目

在Facebook,他们发明了React,因此JavaScript可以使用虚拟DOM模型更快地操纵网站DOM。

React virtual-dom 模型相比,DOM 完全刷新速度较慢,后者仅刷新页面的一部分(阅读:部分刷新)。

正如你可能从这个视频中了解到的那样,Facebook并没有发明React,因为他们立即明白部分刷新会比传统的刷新更快。最初,他们需要一种方法来减少Facebook应用程序的重新构建时间,幸运的是,这带来了部分DOM更新。

React 原生只是 React 的一个结果。它是一个使用JavaScript构建本机应用程序的平台。

React 原生之前,你需要知道 Java 或 Kotlin for Android 和 Swift 或 Objective-C for iPhone 和 iPad 来创建原生应用。

使用 React Native,可以在 JavaScript 中模仿原生应用程序的行为,最终,您将获得特定于平台的代码作为输出。如果您需要进一步优化应用程序,您甚至可以将本机代码与JavaScript混合在一起。

正如 Olivia Bishop 在视频中所说,85% 的 React 原生代码库可以在平台之间共享。这些是应用程序通常使用的组件和通用逻辑。

15%的代码是特定于平台的。特定于平台的JavaScript赋予了平台风格(并在体验中产生了差异)。

很酷的是这个特定于平台的代码 - 已经编写好了,所以你只需要使用它。