2015-10-05 12 views
7

Niedawno dodałem ESLint-ing do mojej aplikacji kątowej i wkrótce zdałem sobie sprawę, że potrzebuję wtyczki eslint-plugin-angular, aby uzyskać prawidłową lintację aplikacji.ESLint: Używanie zalecanych domyślnych reguł z aplikacjami angularjs

Wcześniej korzystałem z właściwości extends w pliku .eslintrc i ustawiałem na eslint:recommended, aby korzystać z zestawu zalecanych reguł eslint.

{ 
    "extends": "eslint:recommended" 
} 

Przetestowałem ten pracował przez dodanie przecinka wleczonego do definicji obiektu w moim kodu, aby upewnić się, że nastąpił błąd pojawia się od eslint.

Teraz, postępując zgodnie z instrukcjami dla eslint-plugin-angleular, zainstalowałem również eslint-config-angleular i widzę, że najszybszym sposobem na rozpoczęcie jest używanie konfigurowalnej konfiguracji.

Jeśli używam rozszerza opcję config kątowego w miejscu mój obecny:

{ 
    "extends": "angular" 
} 

już nie dostać mój błąd rzucony na nieoczekiwane wleczonego przecinkiem.

Czy istnieje sposób, w jaki mogę używać zarówno kątowego, jak i eslint:recommended w opcji konfiguracji rozszerzeń? Np:

{ 
    "extends": ["angular", "eslint:recommended"] 
} 

(które znam nie działa)

Jeśli nie, to czy to oznacza, że ​​muszę stworzyć A Rules config obiekt w moim .eslintrc naśladować zalecanych te z eslint?

{ 
    "extends": "angular", 
    "rules" : { 
    ... 
    } 
} 
+0

Co używasz do strzępienia? (wysublimowany, atom, łyk, polecenie eslint bezpośrednio ...). Przetestowałem za pomocą polecenia eslint i '" extends ": [" kątowe "," eslint: zalecane "]' powinno działać. Musiałem zainstalować "eslint-plugin-angleular" i "eslint-config-angleular" na całym świecie. – kombucha

Odpowiedz

8

Nie mogę rozmawiać, czy nie nastąpiła zmiana kodu w czasie między tym SO artykuł został wprowadzony, ale używam "extends": ["eslint:recommended", "angular"] w moim pliku .eslintrc i to działa dobrze. Mam go na tym samym poziomie co właściwość "env".

Mój plik package.json ma odpowiednio eslint i eslint-plugin-angular wersje 2.3.0 i 0.5.0.

Powiązane problemy