我不明白我看到的错误,也不明白我应该在我的 ESLint 配置中更改什么来修复它,在深入研究了一段时间之后。


我有一段使用 ECMA 版本 6 (ES6) 的 JS 代码,如下所示:

const launchApp = async () => { 
  await sequelize.sync() 
  app.listen(config.port) 
  console.log(`Server started on port ${config.port}.`)     
} 

在上面的 => 处有一个 eslint 错误:

[eslint] Parsing error: Unexpected token => (22, 28) 

我不明白为什么这被认为是一个意外的标记。其他 ES6 样式工作正常。我在 package.json 文件中设置配置,ESLint 相关部分如下所示:

  "eslintConfig": { 
    "parserOptions": { 
      "ecmaVersion": 6 
    }, 
    "env": { 
      "node": true, 
      "es6": true 
    }, 
    "rules": { 
      "semi": ["error", "always"] 
    } 
  } 

我做错了什么?我必须添加哪些进一步的配置?我看了arrow-parensarrow-body-style .据我所知,他们都告诉我 es6 标志应该足以允许箭头函数样式。

请您参考如下方法:

箭头函数是 es2015,但是async 箭头函数是 es2017。将您的 "ecmaVersion" 设置为 2017(或更高版本),它应该可以工作。 See this finished proposals chart for when each ES feature post 2015 was added.


评论关闭
IT序号网

微信公众号号:IT虾米 (左侧二维码扫一扫)欢迎添加!