eslint Parsing error: Unexpected token function with async

eslint Parsing error: Unexpected token function with async

我在 ESLINT 上异步使用时遇到以下错误。

eslint Parsing error: Unexpected token function with async

这是我的eslintsrc

{
  "extends": "airbnb-base",
  "rules": {
    "no-console": "off",
    "func-style":"error",
    "import/no-extraneous-dependencies": ["error", {"devDependencies": false, "optionalDependencies": false, "peerDependencies": false, "packageDir": "./"}]
},
"parserOptions": {
  "ecmaVersion":8
 }
}

更新

这是我的异步

const get = async function get(req, res) {
  const user = await service.get();
  console.log("From db",user.username);
  res.send('ok');
};

这是关于 func-style 的错误。默认情况下,它使用 expression 类型,使用 expression 表示函数的正确方法是:

const get = async get(req, res) {
  const user = await service.get();
  console.log("From db",user.username);
  res.send('ok');
};

查看文档以获取更多示例,https://eslint.org/docs/rules/func-style

更新: 忘了看你加错了,你做的是对的,

const get = async function get(req, res) {
  const user = await service.get();
  console.log("From db",user.username);
  res.send('ok');
};

只需从 eslint 中删除 func-style

我也遇到了这个错误,我在我的 eslintrc 中添加了以下内容:

{
  "env": {
    "node": true,
    "es6": true
  },

  "parserOptions": {
    "ecmaVersion": 8
  }
}

在我的情况下,当我刚从以下位置更改时它就得到了修复:

"parserOptions": { "ecmaVersion": 8 }

"parserOptions": { "ecmaVersion": 2018 }

如果你是这个项目的新手,我建议你带着承诺回去:)

function openTabs(array) {
    return new Promise((resolve, reject) => {
        //... your code
    });
}