VUE中eslint报错: Expected linebreaks to be ‘LF‘ but found ‘CRLF
vue
vuejs/vue: 是一个用于构建用户界面的 JavaScript 框架,具有简洁的语法和丰富的组件库,可以用于开发单页面应用程序和多页面应用程序。
项目地址:https://gitcode.com/gh_mirrors/vu/vue
免费下载资源
·
出现这个的原因:windows 环境下, git 在我们 pull 代码的时候,会自动识别当前的系统环境。将原本的(linux/unix)换行改成对应系统的,在我们提交代码的时候又会转成远程系统环境的(Linux/unix),然后又装了 eslint,默认就是使用 LF,所以就会报这个错误
各种环境下换行符格式
window:CRLF(\r\n 或者^M\n)
mac: CR(\r 或^M)
linux/unix: LF(\n)
解决方式:
1. 在 vscode 的文件代码底部的 CRLF 手动切成 LF, 这样只能让eslint暂时不报错。但是实际上我们 再次pull 下来的时候,git 还是会自动把所有文件全部转成 CRLF,也还是会有报错信息
2. eslint 中的规则配置,在 window 环境下关闭换行符校验,让它提交的时候自动把 CRLF 转成 LF 就可以(貌似我们都没有根本解决这个问题)
"linkbreak-style":["off","windows"]
3. 从 git 拉取代码的时候入手,让 git 依据远程的代码的换行符(LF)pull,不再根据系统去转换格式。同时配置 vscode 换行符为 LF,我的做法是配置好 git 的拉取格式,再把本地原仓库整个删了,然后重新远程拉取一份代码。这样就可以了,命令如下:
git config --global core.autocrlf 有三个配置(看情况选择,我选择了 input)
- true: push 的时候自动将 crlf 转成 LF, pull 的时候转成 crlf(这条配置就需要配置eslint关掉window环境下的换行符校验)
git config --global core.autocrlf true
- input:push 的时候自动将 crlf 转成 LF, pull 代码的时候不自动将 LF 转成 crlf(这条配置,不需要配置eslint,代码格式与远程保持一致,我是用这个)
git config --global core.autocrlf input
- false: 不管是 push 或者 pull 都不转换,原来的文件是什么就是什么
git config --global core.autocrlf false
其他配置:
1、拒绝提交包含混合换行符的文件
git config --global core.safecrlf true
2、允许提交包含混合换行符的文件
git config --global core.safecrlf true
3、提交包含混合换行符的文件时给出警告
git config --global core.safecrlf warn
vscode配置:
GitHub 加速计划 / vu / vue
80
16
下载
vuejs/vue: 是一个用于构建用户界面的 JavaScript 框架,具有简洁的语法和丰富的组件库,可以用于开发单页面应用程序和多页面应用程序。
最近提交(Master分支:4 个月前 )
73486cb5
* chore: fix link broken
Signed-off-by: snoppy <michaleli@foxmail.com>
* Update packages/template-compiler/README.md [skip ci]
---------
Signed-off-by: snoppy <michaleli@foxmail.com>
Co-authored-by: Eduardo San Martin Morote <posva@users.noreply.github.com> 6 个月前
e428d891
Updated Browser Compatibility reference. The previous currently returns HTTP 404. 6 个月前
更多推荐
已为社区贡献4条内容
所有评论(0)