【问题标题】:ESLint parsing error when using arrow syntax with async将箭头语法与异步一起使用时 ESLint 解析错误
【发布时间】:2021-01-23 04:55:08
【问题描述】:

我正在使用 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
  }
};

【问题讨论】:

    标签: eslint


    【解决方案1】:

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

    【讨论】:

    • 我的eslintrc.json 文件中有"env": {"es6": true}。我需要将es6 切换为es7
    • 我的eslintrc.json 文件中有"env": { "es2021": true}。我需要将 es2021 切换到 es2022
    【解决方案2】:

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

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

    【讨论】:

    • 这拯救了我的一天!谢谢!我不明白他们为什么一开始就把它加在那里。
    【解决方案3】:

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

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

    如果你有这个,你应该改变:

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

    你可以在这个issue on GitHub找到这个。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-08-15
      • 1970-01-01
      • 2021-01-25
      • 2016-09-16
      • 1970-01-01
      • 2013-08-04
      • 2016-11-08
      相关资源
      最近更新 更多