React Native - 为什么我需要babel或webpack?

Fil*_*Suk 18 reactjs webpack babeljs react-native

我是Javascript世界的新手,我正在努力学习和理解React Native.

为什么我会在如此多的反应原生锅炉板中找到babel和webpack?(https://github.com/jhabdas/react-native-webpack-starter-kit)

如果我理解正确babel是支持旧浏览器但我没有使用反应原生的浏览器.RN不会将所有js代码编译为本机?

webpack也是如此 - 如果他们正在由RN编译,为什么我需要捆绑我的js文件?

glu*_*ued 36

Babel已包含在react-native中,因此您可以选择使用ES6 +或更旧的ES5样式.

为了澄清,React-native 在移动设备上的javascript核心上运行,这意味着它不在浏览器中但仍然呈现JS代码,因此babel就在那里,允许你编写下一代JS代码并使用React的JSX代码.

以下是支持的ES6 +功能列表

有些人想要Babel中没有附带反应本机的附加功能,因此他们最终使用webpack和自定义Babel配置.最近他们增加了对异步功能(ES7)等内容的支持,所以我个人认为除非你有特殊需要,否则我认为你不需要去webpack路由.