我在文档中读到 React Native 不是 webView 而不是 html 技术。所以它不像 Elektron 应用程序,后者本质上是带有网页的可嵌入网络浏览器。
您可以判断 React Native 应用程序是否编译为本机代码。例如,如果是针对Android平台,那么转成java代码,再把java代码编译成字节码等等,如果你看技术的名字,一般情况下应该如何(在我看来)?
我在文档中读到 React Native 不是 webView 而不是 html 技术。所以它不像 Elektron 应用程序,后者本质上是带有网页的可嵌入网络浏览器。
您可以判断 React Native 应用程序是否编译为本机代码。例如,如果是针对Android平台,那么转成java代码,再把java代码编译成字节码等等,如果你看技术的名字,一般情况下应该如何(在我看来)?
不。
在 React-Native 中,应用程序代码用 JS 编写并在 iOS/Android 的 JavaScript-core 中执行,在调试模式下,代码直接在浏览器中执行(如果您有基于 Chromium 的浏览器,则为 V8)。
由于最近有 JSI(JavaScript 接口)
https://github.com/react-native-community/discussions-and-proposals/issues/91
这是一种抽象,允许您使用任何实现,例如新的 HermesJS 引擎,但这只会用于 Android(因为 Apple 不允许您使用 JavaScript Core 以外的引擎)
在架构上我们有:
现在,一点一点地,渲染是如何工作的(简而言之):
我建议看报告:
YouTube 上面向 JS 开发人员的 React Native 架构