React-Native:无法将 babel 更新为 ES7

React-Native: Cannot update babel to ES7

我正在尝试使用新的 ES7 功能 async/await 但据我在我的 react-native node_modules 中所见,我没有这些功能。

我有 react-native 版本 0.31,我刚刚将它更新到 0.32,我可以看到 babel 仍然没有更新 ES7 功能,所以我不能使用 async/await。你知道我如何让它发挥作用吗?

默认情况下,Babel 不附带 async/await。要使用它们,请安装此插件:

npm install babel-plugin-syntax-async-functions

并在您的 .babelrc 文件中像这样使用它:

{
  "plugins": ["syntax-async-functions"]
}

参考:https://babeljs.io/docs/plugins/syntax-async-functions/

你需要安装几个 babel 插件,然后你可以使用 ES7 装饰器并将其保存在 devDependencies 中:

1- babel-plugin-transform-decorators-legacy

npm i babel-plugin-transform-decorators-legacy --save-dev

2-babel-preset-react-native-stage-0

npm i babel-preset-react-native-stage-0 --save-dev

最后在根项目文件夹文件中创建 .babelrc 如果不存在并添加这些行:

{
 'presets': ['react-native'],
 'plugins': ['transform-decorators-legacy']
}