当在gulp项目中使用eslint时,我遇到过这样的错误问题 预期换行符是“LF”,但发现“CRLF”换行风格,我使用Windows环境的运行gulp和整个错误日志如下所示

 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();

当前回答

我发现它很有用(我想忽略换行而不改变任何文件),在.eslintrc中使用换行样式忽略它们,按照这个答案:https://stackoverflow.com/a/43008668/1129108

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

其他回答

在我的情况下(vue.js项目,使用vue-cli创建),lint问题预期换行符是“LF”,但发现“CRLF”换行风格与pretty相关。 从版本>= 2更漂亮的替换所有行结尾“lf”:https://prettier.io/docs/en/options.html#end-of-line

由于我使用Windows开发,我设置了这3个(git, eslint,更漂亮)配置,以避免行结束问题:

Git:我设置了Git配置全局核心。autocrlf真实 eslint:在.eslintrc.js文件中配置:

      module.exports = {
      rules: {
        'linebreak-style': ['error', 'windows'],
      },
    };

最后在prettier.config.js中:

module.exports = {
    endOfLine: "crlf",
};

我只是想添加一个更简单的方法。在VScode的右下角单击LF或CRLF来在它们之间切换。见图

这里有一个非常好的方法来管理这个错误。你可以把下面的代码放到.eslintrc.js文件中。

根据操作系统,它将使用适当的行结束符。

rules: {
        'linebreak-style': ['error', process.platform === 'win32' ? 'windows' : 'unix'],
 }

如果你想要更改为LF,并且你正在使用VS Code,你可以这样逐个文件执行:

在Vue js中的.eslintrc文件中添加'linebreak-style':0到我们的规则

  rules: {
    'linebreak-style':0,
  }