1. ホーム
  2. javascript

[解決済み】改行が「LF」であることを期待したが、「CRLF」改行スタイルが見つかった

2022-02-09 22:47:17

質問

gulpプロジェクトでeslintを使用する際、以下のようなエラーが発生する問題がありました。
Expected linebreaks to be 'LF' but found 'CRLF' linebreak-style そして、私はgulpを実行するためにWindows環境を使用しており、全体のエラーログは以下のとおりです。

 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

また、私は extra.js というファイルがあり、間違いの可能性を示しています。

function getWindowHeight() {
    return window.innerHeight;
}

getWindowHeight();

解決方法は?

があるかどうか確認してください。 linebreak-style ルールは、.eslintrc またはソースコードのいずれかで、以下のように設定されています。

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

Windowsで作業しているので、代わりにこのルールを使用するとよいでしょう。

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

を参照してください。 ドキュメント linebreak-style :

多くの人がそれぞれ異なるエディタ、VCS アプリケーションやオペレーティングシステムによって のどちらかによって末尾が書き込まれます。 Windows版とMac版のSourceTreeを使用した場合に発生します。 を使用します)。

Windowsオペレーティングシステムで使用される改行(改行)は 通常、キャリッジリターン(CR)の後にラインフィード(LF)が続くので、これは キャリッジリターン・ラインフィード(CRLF)であるのに対し、LinuxやUnixではシンプルな ラインフィード(LF)。対応する制御シーケンスは "\n" (LFの場合) と "\r\n" は(CRLF)の場合です。

これは自動的に修正可能なルールです。その --fix オプションは、このルールによって報告された問題を自動的に修正します。

しかし、もし CRLF Windowsで作業している場合、コード内の改行には fix オプションを使用します。