2016-05-17 11 views
1

Ich versuche, auf eslint 2.x und die neueste Version von babel-eslint zu aktualisieren. Ich konnte keine Dekoratoren oder Klasseneigenschaften richtig fusseln. Ich habe eine minimale repro erstellt unten gezeigt:eslint 2.x und babel-eslint erkennt keine Decorators

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 { "Parser": „ba bel-eslint“, "parserOptions": { "source": "Modul" }, "Regeln": { "streng": 0 } }

Wenn ich eslint test.js laufen bekomme ich folgende :

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

✖ 1 problem (1 error, 0 warnings) 

Wenn ich 3 Zeile aus kommentieren, dann bekomme ich diese:

5:16 error Parsing error: Unexpected token = 

✖ 1 problem (1 error, 0 warnings) 

Es scheint, dass babel-eslint bei ist ng verwendet, um die Datei zu analysieren, aber keine Informationen aus der Datei .babelrc.

Wie gehe ich vor, um eslint und babel-eslint zu ermöglichen, diese Datei erfolgreich zu parsen und dann zu flinken?

Antwort

2

Dies ist ein Fehler in der Bibliothek.

Es wird empfohlen, auf Version 2.9 herunterzustufen.

GitHub issue

+1

Dank! Das hat funktioniert! –

+2

Kein Downgrade erforderlich, dies wurde in 2.10.2 AFAIK behoben. – loganfsmyth