Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/364.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 反应本机:无法将babel更新为ES7_Javascript_Reactjs_React Native_Ecmascript 2017 - Fatal编程技术网

Javascript 反应本机:无法将babel更新为ES7

Javascript 反应本机:无法将babel更新为ES7,javascript,reactjs,react-native,ecmascript-2017,Javascript,Reactjs,React Native,Ecmascript 2017,我正在尝试使用新的ES7特性async/await,但就我在react native node_模块中看到的情况来看,我没有这些特性 我有react原生版本0.31,我刚刚将其更新为0.32,我可以看到babel仍然没有使用ES7功能进行更新,因此我无法使用async/await。您知道如何使其工作吗?默认情况下,Babel不附带async/await。要使用它们,请安装此插件: npm install babel-plugin-syntax-async-functions 并在.babelr

我正在尝试使用新的ES7特性async/await,但就我在react native node_模块中看到的情况来看,我没有这些特性


我有react原生版本0.31,我刚刚将其更新为0.32,我可以看到babel仍然没有使用ES7功能进行更新,因此我无法使用async/await。您知道如何使其工作吗?

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

npm install babel-plugin-syntax-async-functions
并在
.babelrc
文件中这样使用它:

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

参考资料:

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

1-巴别塔插件转换装饰器传统版

npm i babel-plugin-transform-decorators-legacy --save-dev
2-巴别塔预设反应本机阶段-0

npm i babel-preset-react-native-stage-0 --save-dev
最后在根项目文件夹文件中创建.babelrc,如果不存在,则添加以下行:

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

现在在react native模块中有了babel。你能重新表述你的问题吗?问题是你没有安装babel?我错了,希望现在更好了。我有20个.babelrc文件,我不确定哪一个是好的…你怎么有20个?在项目的根目录中应该只有一个。如果没有,您可以直接创建它。您是否尝试使用异步代码运行应用程序?React-native使用babel预置React-native,其中也包含异步插件。我在我的应用程序中也使用了异步。是的,然后我收到一个控制台。错误消息为Unexpected token.async/await不是ES7的功能。它将于明年作为ES2017的一部分发布。