我是Javascript世界的新手,我正在努力学习和理解React Native。
为什么我会在如此多的反应原生锅炉板中找到babel和webpack?(https://github.com/jhabdas/react-native-webpack-starter-kit)
如果我理解正确babel是支持旧浏览器,但我没有使用具有react-native的浏览器。 RN不会将所有js代码编译为本机?
与webpack相同 - 如果他们正在由RN编译我为什么需要捆绑我的js文件?
答案 0 :(得分:33)
Babel已包含在react-native中,因此您可以选择使用ES6 +或更旧的ES5样式。
为了澄清,React-native在移动设备上的javascript core上运行,这意味着它不在浏览器中但仍然呈现JS代码,因此babel就在那里,允许你编写下一代JS代码并使用React的JSX代码。
以下是list支持的ES6 +功能
有些人希望Babel中没有附带反应原生的附加功能,因此他们最终使用webpack和自定义Babel配置。最近他们增加了对异步功能(ES7)等内容的支持,所以我个人认为除非你有特殊需要,否则我认为你不需要去webpack路线。