自从我从头开始一个 nodejs 项目已经有一段时间了,所以设置和配置 eslint、babel 等有点让人头疼。
现在我的 babelrc 是:
{
"presets": [
[
"env",
{
"targets": {
"node": "10"
}
}
]
],
"plugins": [
[
"transform-runtime",
{
"regenerator": true
}
]
]
}
package.json
具有开发依赖项:
"babel-cli": "^6.26.0",
"babel-plugin-transform-runtime": "^6.23.0",
"babel-preset-env": "^1.7.0",
现在我想遍历一个对象列表。对于每一个,我都需要执行一些我需要执行的异步任务await
,所以我做了:
for await (const thing of things) {
const foo = await doSomethingThatTakesAwhile(thing)
// etc
}
但是当我在 dev (nodemon via babel-node) 中运行它时,现在等待出现语法错误:
for await (const thing of things) {
^
Syntax Error Unexpected token, expected (
at Parser.pp$5.raise (... \node_modules\babylon\lib\index.js:4454:13)
at Parser.pp.unexpected (... \node_modules\babylon\lib\index.js:1761:8)
at Parser.pp.expect (... \node_modules\babylon\lib\index.js:1749:33)
at Parser.pp$1.parseForStatement (... \node_modules\babylon\lib\index.js:2008:8)
etc..
我是否必须更改我的 babel 配置,和/或我是否完全误解了 /await和await/async?