我正在尝试使用新的 ES7 功能 async/await,但据我在我的 react-native node_modules 中看到的,我没有它们。
我有 react-native 版本 0.31,我刚刚更新到 0.32,我可以看到 babel 仍然没有更新 ES7 功能,所以我不能使用 async/await。你知道我怎样才能让它工作吗?
我正在尝试使用新的 ES7 功能 async/await,但据我在我的 react-native node_modules 中看到的,我没有它们。
我有 react-native 版本 0.31,我刚刚更新到 0.32,我可以看到 babel 仍然没有更新 ES7 功能,所以我不能使用 async/await。你知道我怎样才能让它工作吗?
您需要安装几个 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']
}
默认情况下,Babel 不附带 async/await。要使用它们,请安装此插件:
npm install babel-plugin-syntax-async-functions
.babelrc
并在您的文件中像这样使用它:
{
"plugins": ["syntax-async-functions"]
}