使用最新版本的nodejs 7.6+,我开始使用async / await。
我使用的是jshint,但据我所知,它们目前确实支持此语法,有些建议使用eslint。
所以好吧,我设置了eslint,但是argh ..它也标记了异步功能。 Parsing error: Unexpected token init (Fatal)
Parsing error: Unexpected token init (Fatal)
我知道这没什么错,因为我的代码运行良好,仅是linter。如果我注释掉一个异步功能,它也只会标记下一个。实际上eslint仅标记发现此错误的第一个异步,而不是全部标记(这是怎么回事?)
这是使用初始化向导制作的eslintrc文件。我希望只是请求node和es6的env就足够了……显然不是。
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回购中存在一些相关问题,但是没有一个问题可以帮助我解决此问题。我不认为只是缺少一些有关使用commonjs(无babel)为本地nodejs正确设置eslint的错误。
谁知道即使我没有使用babel,也许需要babel插件才能使这项工作正常???如果是这样,我该如何设置。
由于async/ await是ES2017功能,因此需要将其添加到您的.eslintrc.js:
async
await
.eslintrc.js
module.exports = { // ... "parserOptions": { "ecmaVersion": 2017 }, // ... }