【问题标题】:eslint 2.x and babel-eslint Doesn't Recognize Decoratorseslint 2.x 和 babel-eslint 不识别装饰器
【发布时间】:2016-09-14 01:03:57
【问题描述】:

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

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 成功解析然后 lint 这个文件?

【问题讨论】:

    标签: babeljs eslint


    【解决方案1】:

    这是库中的一个错误。

    建议降级到2.9版本。

    GitHub issue

    【讨论】:

    • 无需降级,这已在 2.10.2 AFAIK 中修复。
    猜你喜欢
    • 2016-05-27
    • 2023-03-14
    • 2019-08-06
    • 2021-01-30
    • 2022-06-23
    • 2021-10-29
    • 2017-06-05
    • 2017-04-02
    • 2019-08-05
    相关资源
    最近更新 更多