eslint 8 尊重顶级等待

Mr.*_*Mr. 9 node.js async-await eslint

我在我的nodejs模块中使用顶级await

await您可以在 JavaScript 模块中单独使用该关键字(在异步函数之外)。

.js当最近的父文件包含值为 的package.json顶级字段时,以结尾的文件将作为 ES 模块加载"type""module"

$ jq -r '.type' package.json
module

$ node --version
v16.14.2

$ npm --version
8.7.0

$ jq -r '.devDependencies.eslint' package.json
8.12.0
Run Code Online (Sandbox Code Playgroud)

当我运行 eslint 时,它应该支持 top-levelawait,我收到错误

解析错误:无法在异步函数外部使用关键字“await”

我如何使 eslint 成为顶级荣誉await

GOT*_*O 0 20

确保:

  • 您正在使用 ESLint >=8。
  • 您有正确的解析器选项ecmaVersion应该是2022"latest",并且sourceType应该是"module"(ESLint 不尊重文件"type": "module"中的设置package.json)。

下次您对 ESLint 有疑问时,请显示您的 ESLint 配置(通常为.eslintrc.json.eslintrc.yml)以获得更具体的建议。