2015-01-05 21 views
6

Zgodnie z docs plugins powinien działać, jeśli są one KMP moduły nazwane „eslint-plugin-”Jak zdobyć lokalne wtyczek eslint pracować lokalnie zainstalowanego eslint

Here's a plugin that follows that pattern. Source is here.

Więc robimy nowy projekt

md foo 
cd foo 
npm init 
... answer questions .. 
npm install --save-dev eslint 
npm install --save-dev eslint-plugin-require 
echo "define(function(){});" > test.js 
echo "{\"rules\":{\"require\": 2}}" > conf.json 
node node_modules/eslint/bin/eslint.js -c conf.json --plugin eslint-plugin-require test.js 

produkuje

~/node_modules/eslint/lib/eslint.js:569 
       throw new Error("Definition for rule '" + key + "' was not 
        ^
Error: Definition for rule 'require' was not found. 

zmienić config

echo "{\"rules\":{\"eslint-plugin-require\": 2}}" > conf.json 

ani

echo "{\"rules\":{\"require-define\": 2}}" > conf.json 

ani

echo "{\"rules\":{\"require-require-define\": 2}}" > conf.json 

ani

echo "{\"rules\":{\"eslint-plugin-require-define\": 2}}" > conf.json 

ani

echo "{\"rules\":{\"eslint-plugin-require-require-define\": 2}}" > conf.json 

nie Fix

Jak używać lokalnie zainstalowanych wtyczek eslint?

+0

Jeśli używasz eslint konsoli, wtyczki powinien być instalowany globalnie – Janom

Odpowiedz

4

Jest dość prosty w użyciu lokalnych wtyczek z lokalną instalacją eslint, ale nie od razu jest to oczywiste.

1. Instalacja

Nic innego od tego, co tutaj jesteś już robi.

npm install --save-dev eslint 
npm install --save-dev eslint-plugin-require 

2. Konfiguracja

używam plik w moim przypadku .eslintrc, ale ta sama zasada powinna mieć zastosowanie, jeśli jesteś przejazdem niestandardowy plik konfiguracyjny do CLI. Zwróć uwagę na różnicę w definiowaniu reguł, gdy jest to wtyczka.

{ 
    "plugins": [ 
     // Tell eslint about the require plugin 
     "require" 
    ], 
    "rules": { 
     // Built-in Rules 
     "camelcase": 2, 
     "no-trailing-spaces": 2, 

     // Require Plugin Rules (note plugin prefix) 
     "require/require-define": 2, 
     "require/require-array-syntax": 2, 
     "require/require-module-prefix": 2 
    } 
} 
+0

następnie uruchomić który cmd na CLI? Uruchomę 'eslint' w bieżącym folderze projektu, ale nie jest to rozpoznawane jako polecenie. – Felix

+0

@Felix - będzie w folderze node_modules/.bin, więc uruchomienie './Node_modules/.bin/eslint' powinno wystarczyć. – cvisco

Powiązane problemy