我使用带有react native和nodejs的Visual Studio IDE来创建本机移动应用程序,我的代码被编译为平台本机代码。我在问这个工具的哪个部分在操作系统原生源代码中编译我的代码?
世博会如何运作
暂时忘掉Expo,让我们讨论一下React Native。
React Native应用程序是一个编译的应用程序,它运行一些Javascript。无论何时构建和运行React Native项目,都会启动一个名为Metro
的打包程序。
包装商做了几件事:
1.将您所有的Javascript代码组合到一个文件中,并将您的设备无法理解的任何Javascript代码(如JSX或一些较新的JS语法)翻译为本地代码。
2.将资源(例如PNG文件)转换为可以由Image组件显示的对象。
当你不使用Expo时,你会这样运行你的应用程序。
react-native start
不过,使用Expo,您可以像这样运行它(使用他们的CLI工具)。
exp start
这两个命令启动的打包程序与我们刚才讨论的相同。不同的是,exp-start还启动了一个名为Expo Development Server的东西。该服务器运行一个进程,获取React Native打包程序(Metro)创建的Javascript捆绑包,并在模拟器上的Expo应用程序中运行。
阅读Mark Newton的详细文章
另请参阅关于博览会如何运作的官方文件