2016-04-02 5 views
3

Wir beginnen in einigen es6 Module zu mischen und eslint mit Recht beschwert, wenn Sie Import/Export verwenden, wenn nicht die source mit: scriptEslint - Source Mischung aus Skript und Modul

Parsing error: 'import' and 'export' may appear only with 'sourceType: module'at line 1 col 1 

Allerdings, wenn ich source ändern Modul dann jede Datei, die 'strict' verwendet hat; an der Spitze wird gekennzeichnet sagen, verwenden Sie strikte wird nicht in Modulen benötigt.

Die Module sind meine Jsx-Dateien und meine Js-Dateien sind POJ, also brauche ich beide SourceTypes zu arbeiten.

Irgendwelche Ideen, wie man eslint, sich mit Modulen und Skripten zu verhalten? Ich möchte vermeiden, zwei separate Eslintrc-Dateien und Regelsätze zu laufen, nur um Module und Skripte zu haben.

+0

Warum Sie nicht deaktivieren Sie die Regel, die 'Flags verwenden strict' nicht benötigt? (Ich nehme an, das ist möglich) –

Antwort

5

Solange Ihre Skripte eine Erweiterung haben und Ihre Module eine andere Erweiterung haben, können Sie zwei verschiedene Konfigurationen haben.

// .eslintrc.json 
{ 
    // ... 
    // Your normal config goes here 
    // ... 
} 

Lint Ihre normalen Skripte mit eslint ., wie Sie gerade getan habe. Standardmäßig ist es sourceType: "script", zieht standardmäßig .eslintrc.json und filtert standardmäßig nur die Dateien *.js.

// .eslintrc.modules.json 
{ 
    "extends": "./.eslintrc.json", 
    "parserOptions": { 
     "sourceType": "module" 
    }, 
    // You can have additional module-specific config here if you want 
} 

Jetzt können Sie nur die Module Fussel eslint --config .eslintrc.modules.json --ext .jsx . verwenden, die die Module Config ziehen wird, die nur eine Erweiterung des normalen .eslintrc.json ist, und es werden nur die Dateien *.jsx Fussel.

0

Ich habe die Hauptdatei im Stammordner mit der Option sourceType: script erstellt. Wenn in einem Ordner ./front Datei .eslintrc.json:

{ 
    "extends": "../.eslintrc.json", 
    "parserOptions": { 
     "sourceType": "module" 
    } 
} 
Verwandte Themen