async/await 需要正确的 eslintrc - 使用 7.6+ nodejs

need a correct eslintrc for async/await - using 7.6+ nodejs

使用最新版本的 nodejs 7.6+ 我开始使用 async/await。

我使用的是 jshint,但据我了解,他们目前确实支持这种语法,有些人建议使用 eslint。

好吧,我设置了 eslint,但是唉......它也标记了异步函数。
Parsing error: Unexpected token init (Fatal)

我知道没有问题,因为我的代码 运行 很好,只是 linter。如果我注释掉一个异步函数,它也会标记下一个。事实上,eslint 只标记第一个发现有这个错误的异步,而不是所有的错误(那是怎么回事?)

这是使用初始化向导制作的 eslintrc 文件。我希望只为 env 请求 node 和 es6 就足够了……显然不行。

module.exports = {
    "env": {
        "es6": true,
        "node": true
    },
    "extends": "eslint:recommended",
    "rules": {
        "indent": [
            "error",
            "tab"
        ],
        "linebreak-style": [
            "error",
            "unix"
        ],
        "quotes": [
            "error",
            "single"
        ],
        "semi": [
            "error",
            "never"
        ]
    }
};

修复方法是什么?

我已经尝试了几个版本的 .eslintrc,甚至在 eslint 仓库中看到了一些相关的问题,但是 none 正在帮助我解决这个问题。我不认为这是一个错误,只是缺少有关使用 commonjs(无 babel)为本机 nodejs 正确设置 eslint 的内容。

即使我没有使用 babel,谁知道也许需要 babel 插件才能完成这项工作???如果那是真的,我该如何设置它。

由于 async/await 是 ES2017 功能,您需要将其添加到 .eslintrc.js:

module.exports = {
    // ...
    "parserOptions": {
        "ecmaVersion": 2017
    },
    // ...
}