Dnes jsem přešel z JSHintu na ESLint. Tím asi nejpádnějším důvodem je podpora Reactu, respektive jeho JSX a lepší monžnosti konfigurovatelnosti. Musím ale dodat, že jsem se bránil do poslední chvíle. Důvodem byla třeba rychlost lintování: JSHint mi zdrojáky lintoval rychleji… A tohle je informace, kterou se nikde nedočtete.
Než jsem switchnul, pročetl jsem kde co, abych zjistil, že:
- JSHint je fork původního JSLintu
- ESLint je dnes už asi více používaný než JSHint, který je tady nicméně déle
- velké a významné IT používají ESLint…
ESLint, stejně jako JSHint, fungují dobře jak v Atomu, tak i Sublime, což jsou dnes už jediné editory, které dnes používám (když nepočítám Vim…).
Co se mi asi na ESLintu o trochu víc líbí je jeho konfigurace. Konfigurační soubor můžete mít jak v JSON souboru, tak v JS, ale i v Yamlu. V rámci projektu můžete mít v root adresáři výchozí konfiguraci pro ESLint a v dalších jeho podadresářích můžete mít specifické, upravené konfiguráky dle konkrétní potřeby. Vedle toho můžete použít něčí best-practice vzorový konfigurák, ten použít jako základ a upravit jen to chcete jinak…
V ESLintu samozřejmě funkují inlajnované directivy pro linter vkládané přímo do souborů se zdrojáky, stejně jako v JSHintu.
Instalace
# 1. samotná instalace eslintu npm -g i eslint # 2. pokud používáte React, pak doinstalování balíčku pro něj npm -g i eslint-plugin-react # 3. finálně pak v adresáři se zdrojáky vašeho projektu vytvořit samotný konfigurák eslint --init