babeljs - eslint 2.x 和 babel-eslint 无法识别装饰器

标签 babeljs eslint

我正在尝试升级到 eslint 2.x 和最新版本的 babel-eslint。我一直无法让装饰器或类属性正确地检查。我创建了一个最小的重现,如下所示:

test.js

import {decorator} from 'foo';

@decorator('test')
export class Test {
  testProperty = 'a string';
}

package.json

{
  "name": "test",
  "version": "1.0.0",
  "description": "",
  "main": "test.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "author": "",
  "license": "ISC",
  "devDependencies": {
    "babel": "^6.5.2",
    "babel-eslint": "^6.0.4",
    "babel-plugin-transform-decorators-legacy": "^1.3.4",
    "babel-preset-es2017": "^1.4.0",
    "babel-preset-stage-1": "^6.5.0",
    "eslint": "^2.10.1"
  }
}

.babelrc

{
  "presets": ["es2017", "stage-1"],
  "plugins": ["transform-decorators-legacy"]
}

.eslintrc.json { “解析器”:“babel-eslint”, “解析器选项”:{ “源类型”:“模块” }, “规则”:{ “严格”:0 } }

当我运行 eslint test.js 时,我得到以下信息:

  3:1  error  Parsing error: Unexpected character '@'

✖ 1 problem (1 error, 0 warnings)

如果我注释掉第 3 行,那么我会得到:

  5:16  error  Parsing error: Unexpected token =

✖ 1 problem (1 error, 0 warnings)

似乎正在使用 babel-eslint 来解析该文件,但没有从 .babelrc 文件中获取任何信息。

如何启用 eslint 和 babel-eslint 来成功解析并检查该文件?

最佳答案

这是库中的错误。

建议降级到版本2.9

GitHub issue

关于babeljs - eslint 2.x 和 babel-eslint 无法识别装饰器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37284437/

相关文章:

ecmascript-6 - 如何排查 es6 模块依赖问题?

reactjs - 导入 redux 结果为 undefined

sublimetext3 - 包控制 : Install Package missing in Sublime Text 3

reactjs - 在我的 react 应用程序中使用 Jest ,描述未定义

vue.js - 模块构建失败(来自 ./node_modules/eslint-loader/index.js): Error: Cannot find module 'eslint/lib/formatters/stylish'

javascript - npm install package-name 非常慢

javascript - Electron "MAIN": requiring you own js file and call function from it

javascript - 找不到配置中指定的以下规则的实现

angular - 将angular 9升级到10后如何更新eslint的配置

visual-studio-2015 - 使用工具预览 1 Visual Studio 2015 for ESlint