谁捆绑了本地反应代码?

时间:2017-03-01 06:44:54

标签: android ios react-native

当我们创建 React app 时,我们需要将 jsx 转换为 js babel 就是这样做的。

我们也可以使用gulp或webpack来构建可由浏览器执行的最终代码。

使用 React-Native ,我们仍在使用 jsx .babelrc 包含 " react-native" 的文件,仅作为必需的预设。很明显,babel正在将jsx转换为本机代码。

我的查询是" ReactNative 使用了哪种捆绑包?"。 babel如何将jsx转换为本机代码? ReactNative 使用gulp,grunt,webpack还是别的什么?

  • 如果是,如何自定义此配置?哪个文件是 可用于此目的? (假设我想使用traceur而不是babel)
  • 如果不是,我们可以使用gulp或webpack吗? 使用 react-native init 命令创建项目时反应原生?

1 个答案:

答案 0 :(得分:2)

React Native使用自己的打包器(包含在React Native'代码中:https://github.com/facebook/react-native/tree/master/packager)。

它使用了Babel,这就是为什么你在项目根目录中看到.babelrc的原因。

他们没有使用像webpack这样更标准的东西的主要原因是因为它似乎对React Native的项目来说不够快,所以Facebook决定创建他们自己的打包器。如果您想了解更多信息,可以在github中查看此问题:https://github.com/facebook/react-native/issues/5他们讨论如何克服使用webpack时遇到的打包问题。如果你是React Native的内部人员,这是第一个问题之一,读起来很有趣