2015-09-13 48 views
10

Ho definito alcune regole nel file di configurazione ESLint. Questo file è allegato inCome configurare ESLint per funzionare con PhpStorm per autofix errori ESLint

Preferences 
    ->Languages and Frameworks 
    ->JavaScript 
     ->Code Quality Tools 
     ->ESLint 

E vedo che funziona bene perché in editor di codice viene mostrato ogni regola, quando sembra che vi sia un errore che non li corrisponde. Anche quando uso "ispezione Codice"

Code 
    -> Inspect code 

ispettore trova tutti gli errori e li mostra in piccola finestra in basso. C'è anche la possibilità di applicare autofix a ciascuno di questi errori ma quando provo a farlo sono stato reindirizzato alla pagina di configurazione di ESLint nella sezione delle preferenze di PhpStorm. Ecco come si presenta:

enter image description here

ci dovrebbe essere un collegamento che dovrebbe risolvere il problema che automaticly quando clicco su di essa ma invece c'è un link che apre solo ESLint la finestra di configurazione a comparsa:

enter image description here

Come posso farlo funzionare correttamente? Ho cercato di dare un'occhiata ai documenti di PhpStorm ma non ci sono riuscito.

+0

Hai controllato se i percorsi sono validi che si mette lì dentro? Per esempio. compare anche in NetBeans se i percorsi sono cattivi. Se sì, dovresti probabilmente presentare un bug report. I ragazzi di IntelliJ tendono ad avere un buon supporto imho. – m02ph3u5

+2

ESLint è uno strumento di terze parti; IDE ha una buona integrazione che consente di visualizzare tutti i problemi segnalati da quello strumento all'interno della finestra IDE in modo analogo al lavoro di ispezione integrato (nativo per IDE). I problemi segnalati da strumenti di terze parti non sono mappati alle ispezioni integrate, sono cose completamente separate. Non sono sicuro al 100%, ma considerando che ESLint funziona con l'intero file, non ci sarebbe modo di correggere solo 1 istanza di errore ... – LazyOne

+0

Che processo sta andando a fare l'auto-riparazione per te? ESLint non è in grado di auto-riparare gli errori, almeno non jet. È nella lista dei desideri per v. 2, come puoi vedere [** qui **] (https://github.com/eslint/eslint/issues/2203). Ad ogni modo, potresti dare un'occhiata al plugin gulp di [** fixmyjs **] (https://github.com/kirjs/gulp-fixmyjs). [** Qui **] (http://addyosmani.com/blog/fixmyjs/) contiene ulteriori informazioni su fixmyjs. – DavidDomain

risposta

3

Non ho trovato un modo per farlo in nessun IDE (PhpStorm/Atom/Sublime/WebStorm). Tuttavia è possibile risolvere alcuni problemi tramite la riga di comando eseguendo eslint --fix.

È necessario una conoscenza di base di ESLint, attenersi alla seguente procedura:

1) Installare ESlint:

livello globale:

npm i -g eslint eslint-config-airbnb 

(guida di stile di Airbnb è ampiamente utilizzato - http://nerds.airbnb.com/our-javascript-style-guide/.)

O localmente (preferibile):

L'installazione locale è preferibile se si dispone di una directory locale node_modules. Eseguire questo comando dalla directory del progetto:

npm i --save-dev eslint eslint-config-airbnb 

(è quindi possibile eseguire eslint da ./node_modules/.bin/eslint)

2) Creare un file.eslintrc nella directory del progetto con la seguente riga.

{ "extends": "airbnb" } // We installed airbnb's style guide in step 1. 

3) Backup/commit per file il codice sorgente

Eseguire il backup dei file che si desidera Lint; il seguente comando potrebbe cambiare più righe.

4) Eseguire eslint --fix come segue:

eslint --fix path/to/file.js 

eslint --fix path/to/files/*.jsx 

Ciò risolverà 10s di errori nei file!

5) Se eslint --fix si ferma ad un certo errore, risolvere il problema manualmente quindi eseguire nuovamente

ho notato che eslint --fix non risolve tutti i erros in un colpo solo. Ad esempio, a volte verrà eseguito fino a un particolare punto nel file, quindi si fermerà a errori che non è in grado di gestire automaticamente.

Se si rimuove il problema più in alto su cui è bloccato eslint, l'esecuzione del comando risolve di nuovo altri errori nel file. Risciacquare, ripetere.

-

eslint aggiunto alcune nuove funzionalità nel 2015. La speranza l'opzione '--fix' diventa meglio in futuro: http://eslint.org/blog/2015/09/eslint-v1.5.0-released

+0

'linter-eslint' di Atom può auto-correggere sui salvataggi ora. – IanVS

Problemi correlati