2016-06-15 34 views
49

Podczas korzystania eslint w projekcie haustem mam napotkał problem z błędem jak ten
Expected linebreaks to be 'LF' but found 'CRLF' linebreak-style i używam środowiska Windows do biegania łykać i cały dziennik błędów znajduje się poniżejOczekiwane linebreaks być „LF”, ale okazało się linebreak stylu „crlf” w Eslint użyciu łyk

Kiran (master *) Lesson 4 $ gulp 
Using gulpfile c:\Users\Sai\Desktop\web-build-tools\4\ 
gulpfile.js 
Starting 'styles'... 
Finished 'styles' after 17 ms 
Starting 'lint'... 
'lint' errored after 1.14 s 
ESLintError in plugin 'gulp-eslint' 
sage: Expected linebreaks to be 'LF' but found 'CRLF'. 
ails: fileName: c:\Users\Sai\Desktop\web-build-tools\4\js\extra.js 



$>Users\Sai\Desktop\web-build-tools\4\js\extra.js 
error Expected linebreaks to be 'LF' but found 'CRLF' linebreak-style 

mam w tym również extra.js plików jako błąd wskazując ewentualne pomyłki.

function getWindowHeight() { 
    return window.innerHeight; 
} 

getWindowHeight(); 

Odpowiedz

85

Sprawdź, czy masz configure linebreak-style regułę poniżej albo w .eslintrc lub w kodzie źródłowym:

/*eslint linebreak-style: ["error", "unix"]*/ 

Ponieważ pracujemy w systemie Windows, może chcesz użyć tej reguły zamiast :

/*eslint linebreak-style: ["error", "windows"]*/ 

Patrz do documentation z linebreak-style:

Podczas pracy z wieloma osobami mającymi różne edytory, aplikacje i systemy operacyjne VCS może się zdarzyć, że różne końcówki linii zostaną zapisane przez jeden z wymienionych elementów (w szczególności może wystąpić podczas korzystania z wersji SourceTree dla systemu Windows i Mac razem).

linebreaks (nowe linie) używane w systemie operacyjnym Windows są powraca zwykle karetki (CR), a następnie nowego wiersza (LF), zarówno karetki powrót karetki (CRLF), podczas gdy Linux i Unix użyć prostego linia posuwu (LF). Odpowiednimi sekwencjami kontrolnymi są "\n" (dla LF) i "\r\n" dla (CRLF).

Jest to reguła, którą można automatycznie naprawić. Opcja --fix w wierszu poleceń automatycznie naprawia problemy zgłoszone przez tę regułę.

Ale jeśli chcesz zachować w swoich kodach zakończenia linii CRLF (ponieważ pracujesz w systemie Windows), nie używaj opcji fix.

32

Znalazłem go użytecznym (gdzie chciałam zignorować linię pasz i nie zmienia żadnych plików), aby je zignorować w .eslintrc użyciu linebreak stylu, jak na to odpowiedź: https://stackoverflow.com/a/43008668/1129108

module.exports = { 
    extends: 'google', 
    quotes: [2, 'single'], 
    globals: { 
    SwaggerEditor: false 
    }, 
    env: { 
    browser: true 
    }, 
    rules:{ 
    "linebreak-style": 0 
    } 
};