Podczas używania eslint w projekcie gulp napotkałem problem z takim błędem
Expected linebreaks to be 'LF' but found 'CRLF' linebreak-style
i używam środowiska Windows do uruchomionego gulp, a cały dziennik błędów znajduje się poniżej
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
Dołączam również plik extra.js jako błąd wskazujący na możliwy błąd.
function getWindowHeight() {
return window.innerHeight;
}
getWindowHeight();
źródło
Uważam, że jest to przydatne (gdzie chciałem zignorować przesunięcia wiersza i nie zmieniać żadnych plików), aby zignorować je w .eslintrc przy użyciu stylu łamania linii zgodnie z tą odpowiedzią: https://stackoverflow.com/a/43008668/1129108
źródło
Jeśli używasz vscode i korzystasz z systemu Windows , polecam kliknięcie opcji w prawym dolnym rogu okna i ustawienie jej na LF z CRLF . Ponieważ nie powinniśmy wyłączać konfiguracji tylko w celu usunięcia błędów w systemie Windows
Jeśli nie widzisz LF / CLRF, kliknij prawym przyciskiem pasek stanu i wybierz Edytor końca wiersza.
źródło
Settings -> Text Editor -> Files -> Eol
ustawione na\n
. Wydaje się, że dotyczy to tylko nowych plików, nadal będziesz musiał ręcznie przełączać każdy istniejący plik.Właśnie utworzyłem
autocrlf
parametr w plikufalse
.gitconfig i ponownie skonfigurowałem kod. Zadziałało![core] autocrlf = false
źródło
Zdarzyło się ze mną, bo biegałem
git config core.autocrlf true
i zapomniałem wrócić.Potem, kiedy sprawdzam / ściągam nowy kod, cały LF (linia przerwania w Uniksie) został zastąpiony przez CRLF (linia przerwania w Windows).
Uruchomiłem linter i wszystkie komunikaty o błędach są
Expected linebreaks to be 'LF' but found 'CRLF'
Aby rozwiązać problem, sprawdziłem
autocrlf
wartość, uruchamiającgit config --list | grep autocrlf
i otrzymałem:I edycja globalnego GIT config
~/.gitconfig
i zastąpioneautocrlf = true
przezautocrlf = false
.Potem poszedłem do mojego projektu i wykonałem następujące czynności (zakładając kod w
src/
folderze):źródło
Jeśli chcesz to w crlf (Windows Eol), przejdź do Plik -> Preferencje -> Ustawienia. Wpisz „end of line” w zakładce User i upewnij się, że Files: Eol jest ustawione na \ r \ n, a jeśli używasz rozszerzenia Prettier, upewnij się, że Prettier: End of Line jest ustawione na crlf . Na koniec dodaj tę regułę do pliku eslintrc:
'linebreak-style': ['error', 'windows']
źródło
Jeśli używasz vscode, polecam kliknięcie opcji w prawym dolnym rogu okna i ustawienie jej na LF z CRLF ... to naprawiło moje błędy
źródło
Jeśli używasz WebStorm i używasz systemu Windows kliknąć ustawienia / edytor / styl kodu / kartę ogólną i wybrać z menu rozwijanego opcję „okna (\ r \ n). Te kroki dotyczą również Ridera”.
źródło
Ta sama sytuacja miała miejsce, gdy używałem VSCode z eslint. Jeśli używasz VSCode,
1 - Kliknij obszar, którego nazwa może być zarówno LF, jak i CRLF, gdzie w prawym dolnym rogu VScode.
2 - Wybierz LF z menu rozwijanego.
To zadziałało dla mnie.
źródło