我正在尝试为Node v6.9.2配置Babel。我想使用async
/ await
构造。
因为我是Babel和所有Node基础架构的新手,所以我对如何正确配置它感到困惑:
我应该使用什么预设?ES6的大多数功能已经实现了Node。因此,出于性能原因,我不希望Babel移植Node 6.9.x已经支持的功能(箭头功能,新的导入机制等)。
我应该包括哪些插件,以便可以使用异步/等待?我也感到困惑,因为经过一番研究,我发现了几个插件:syntax-async-functions
,transform-async-to-generator
还有更多。
例子.babelrc
会有所帮助。
谢谢
我应该使用什么预设?
您不需要使用任何预设。预设只是插件的集合,如果您要转换一组功能(例如,所有带有ES2015的ES2015 preset- es2015
),可以使其更易于使用。但是,当您只想转换这些功能中的一部分时,您只包括相应的插件。
我应该包括哪些插件,以便可以使用异步/等待?
由于Node 6支持生成器,因此可以使用transform-async-to-generator
以下代码.babelrc
:
{
"plugins": ["transform-async-to-generator"]
}
当然,如果您需要转换更多不受支持的功能,则当然需要添加插件。
babel-preset-env自动确定指定环境所需的插件。这将不包括任何不必要的插件。要指定您当前的Node版本,请使用以下命令.babelrc
:
{
"presets": [
["env", {
"targets": {
"node": "current"
}
}]
]
}
我有一个安装了ReactJS的NetCore2应用程序。 null VS代码抛出一个错误,告诉我异步只适用于。ts文件。另外,如果我在任何其他函数中使用await,我将得到一个错误,比如。 据我所知,async/await不仅仅是TS...(或者我错了?)。 谢了!
问题内容: 在循环中使用/ 是否有任何问题?我试图遍历文件数组和每个文件的内容。 这段代码确实有效,但是这可能会出问题吗?我让某人告诉我,您不应该在这样的高阶函数中使用/ ,所以我只是想问一下这是否有问题。 问题答案: 确保代码确实有效,但是我很确定它不会执行您期望的功能。它只会触发多个异步调用,但此后函数会立即返回。 顺序阅读 如果要顺序读取文件, 则不能使用。只需使用现代循环即可,该循环将按预
我有一个webservice,它加载一些插件并调用它们的过程方法。其中一个插件获取成员列表,并确保它们都包含在MailChimp列表中。 在正常的过程代码中,这不会是一个问题。但是,httpClient上唯一可用的Post方法是PostAsync。对于Async/Await来说,我是相当陌生的,我不确定我的其余代码会有什么影响……特别是因为它涉及到我试图重用httpClient而不是为每个http
我正在使用Spring4 AsyncRestTemplate调用外部REST API服务。 在该方法中,我注册来自REST API调用的ListenableFuture响应的回调。 除了单元测试,我不使用返回的ListenableFuture。回调将根据请求的成功或失败来处理我想采取的实际操作。 ExternalServiceImpl.class
问题内容: 我开始使用React Native进行编程,并且习惯于使用以下语法: 但是我不知道如何在共享包中使其与React JS和React Native兼容。我如何才能做到这一点,以使其在两个平台上都能正常工作? 谢谢! 问题答案: React Native带有Babel和一些Babel预设,而Web上的React只是与React相关的代码。 如果您今天想在网络上使用async / await
问题内容: 我们正在更新我们的API,Babel的Henry Zhu提醒我注意此预设,以替换and的需要。 现在,我在理解最简单的方式来处理所有事情时遇到了困难。 我们的API使用节点v8.x和async / await,本机承诺 我要传播算子 我要管道操作员 我想要导入/导出语法 我想支持杰斯特 我喜欢babel-node如何将API转换到内存中 如果我仅向您显示配置的当前位置,这将更加容易: