将箭头语法与异步一起使用时 ESLint 解析错误

ESLint parsing error when using arrow syntax with async

我正在使用 ESLint 来分析我的代码。代码运行正常,但我从 eslint:

得到这个错误
[eslint] Parsing error: Unexpected token t

(parameter) t: any

test.serial('set: Handles save error', async t => {
  // function definition
});

这里是.eslintrc.js

module.exports = {
  extends: 'google',
  parserOptions: {
    ecmaVersion: 6
  }
};

async/await 是 ECMAScript 2017 功能,因此如果您更改 ecmaVersion: 8 而不是 6,这应该可以工作!

即使您使用最新版本的 ECMAScript,您也可能会遇到此错误如果是这种情况(就像我遇到的那样)问题可能出在您的配置中:

"space-before-function-paren": [
  "error",
  "never"
]

如果你有这个,你应该更改为:

"space-before-function-paren": [
  "error",
  {
    "anonymous": "never",
    "named": "never",
    "asyncArrow": "always"
  }
],

您可以在 issue on GitHub 中找到它。

我遇到了类似的问题并解决了编辑 package.json 第 5 行的问题。

我删除了“。”那是在“eslint”之后,现在一切都很好。