【发布时间】: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 这个文件?
【问题讨论】: