2016-04-15 10 views
1

Ich versuche, einen Eslint-Workflow zu verwenden.ESLint Konfigurationsprobleme

├── [email protected] 
├── [email protected] 
├── [email protected] 
├── [email protected] 
├── [email protected] 
├── [email protected] 
├── [email protected] 
├── [email protected] 
├── [email protected] 
├── [email protected] 

und vor Ort in meinem Projekt: Ich habe Knoten über NVM und die nessary Plugins global installierten

"devDependencies": { 
"eslint": "2.7.0", 
"eslint-config-angular": "0.5.0", 
"eslint-config-standard": "5.1.0", 
"eslint-config-semistandard": "6.0.1", 
"eslint-plugin-angular": "1.0.0", 
"eslint-plugin-promise": "1.1.0", 
"eslint-plugin-standard": "1.3.2" 
}, 

Und ich habe eingerichtet eine .eslintrc.json Datei in meinem Projekt root:

{ 
"env": { 
    "browser": 1 
}, 
"extends": "semistandard", 
"plugins": [ 
    "standard","angular" 
], 
"globals": { 
    "angular": 1, 
    "$": 1, 
    "angularDragula": 1 
} 
} 

Die Atom ESlint und Standard-Formatter Plugins finden und respektieren meine Konfigurationsdatei, aber nicht die Befehlszeile oder den Sublime Linter. Es liest nicht die Config, so dass ich gekennzeichneten Fehlermeldungen erhalten:

enter image description here

Welche deutlich zu machen, dass es nicht um die Einstellungen zu lesen. Was mache ich hier falsch? Wie gesagt, es funktioniert in Atom, aber nicht in Befehlszeile oder Sublime (das die Befehlszeilenoptionen verwendet).

+0

Müssen Sie ihm sagen, wo die Config zu finden ist? Nimmt es das lokale/Projektverzeichnis an oder nimmt eine Benutzer-globale Konfiguration an? –

+0

Ich habe versucht, beide, wie in 'eslint -c ~/.eslintrc.json feedback-alarms.controller.js' – Steve

+0

Ich bin nicht vertraut mit eslint aber was ist mit diesen Fehlern zeigt an, dass es nicht liest Ihre Konfiguration? Was bekommen Sie, wenn Sie Ihre Konfigurationsdatei entfernen und den CLI ausführen oder eine leere Konfigurationsdatei mit '-c' verwenden? –

Antwort

1

Ich würde empfehlen, eine globale Installation von ESLint zu verwenden. Wenn Sie es Fussel die Dateien in Ihrem Projekt ausführen möchten, können Sie verwenden:

node_modules/.bin/eslint feedback-alerts.controller.js 

Oder, noch besser, eine npm script für die Aufgabe erstellen. In Ihrem package.json, können Sie hinzufügen:

"scripts": { 
    "lint": "eslint feedback-alerts.controller.js" 
} 

Darüber hinaus ist es sieht aus wie Sie eine Konfigurationsdatei verwenden, die nicht in Ihrem Projekt Wurzel (~/.eslintrc.json ist in Ihrem Benutzer root nicht Projekt root). ESLint wird seine eigene Konfigurationsauflösung durchführen, daher sollten Sie den Pfad zur Konfigurationsdatei nur in erweiterten Fällen angeben können.