1

我正在构建我的第一个 react-native 应用程序,我对我在谷歌上搜索了很多但附近没有找到的一件事感到困惑。

当我们开始开发时,我们在模拟器或设备中部署 android 应用程序,并且需要运行 Metro bundler 来拉取 js 包。我不知道 App 和 Metro bundler 是如何通信的,谁使这种通信成为可能,以及当我们进行产品构建时它有什么不同?

4

1 回答 1

0

Metro 是一个 JavaScript 捆绑器,它接受选项、一个入口文件,并为您提供一个包含所有 JavaScript 文件的 JavaScript 文件。每次运行 react native 项目时,都会将许多 javascript 文件编译到一个文件中。此编译由称为 Metro 的捆绑程序完成。

回答您的问题:

1 捆绑文件位于您正在构建应用程序的设备本身上,并以不同的格式存储,例如创建 .bundle 的 Android 普通捆绑。另一种格式是索引 RAM 包,其中文件存储为二进制文件。

2 Webpack 也是一种类似类型的模块捆绑器,它捆绑到 ReactJS Web 平台,它的模块可以通过浏览器访问。捆绑过程与地铁类似。

3 这些捆绑的文件被索引并以特定的数字格式存储,因此在运行时很容易按顺序排列 JS 文件。

Metro bundler 有多种功能,你可以在这里阅读 Metro 在 React Native 中的 作用。

我希望它有所帮助。

于 2020-06-25T04:38:46.927 回答