Delete `␍`eslint(prettier/prettier)报错的终极解决方案

1.背景

在进行代码仓库clone打开后,vscode报错全屏的 Delete eslint(prettier/prettier)问题

原因是因为:
罪魁祸首是git的一个配置属性:

由于历史原因,windows下和linux下的文本文件的换行符不一致。* Windows在换行的时候,同时使用了回车符CR(carriage-return character)和换行符LF(linefeed character) *MacLinux系统,仅仅使用了换行符LF * 老版本的Mac系统使用的是回车符CR 

因此,文本文件在不同系统下创建和使用时就会出现不兼容的问题。
我的项目仓库中默认是Linux环境下提交的代码,文件默认是以LF结尾的(工程化需要,统一标准)。
当我用windows电脑git clone代码的时候,若我的autocrlf(在windows下安装git,该选项默认为true)为true,那么文件每行会被自动转成以CRLF结尾,若对文件不做任何修改,pre-commit执行eslint的时候就会提示你删除CR。
现在可以理解ctrl+s和yarn run lint --fix方案为何可以修复eslint错误了吧,因为Git自动将CRLF转换成了LF。

在这里插入图片描述

2. 解决方案:

1.vscode直接转化

一般IDE下方状态栏会提供“切换行尾序列”的工具,如上图,一键切换到正确的行尾序列即可。
好处:直接转化当前页面的报错
坏处:只能修复当前文件,不能解决整个项目报错的问题。
在这里插入图片描述

2. yarn run lint --fix

比上面省事,eslint错误消失,但暂存区多了n个文件改动记录,对比Working tree也没发现任何不同。

缺点:需要commit所有文件,多余。

3. 配置.prettierrc文件

在项目根目录下的.prettierrc文件中写入即可。其实就是不让prettier检测文件每行结束的格式.

"endOfLine": "auto" 

缺点:不能兼容跨平台开发,从前端工程化上讲没有做到尽善尽美。

4. 设置git配置(最佳实践)

好处:一劳永逸,但是需要重新clone一下代码

cmd命令行输入以下代码

git config --global core.autocrlf false

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/27382.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Spring 框架——事件驱动模型

目录 1.概述2.三种角色2.1.事件角色2.2.事件监听者角色2.3.事件发布者角色 3.示例 1.概述 (1)Spring 事件驱动模型是 Spring 框架中的一种编程模型,也被称为发布/订阅模型,通过使用观察者模式和事件机制,实现了组件之…

优化CSS重置过程:探索CSS层叠技术的应用与优势

目录 下面是正文~~ CSS重置方法 方法的结合 合并方法的问题 通用移除样式 顺序很重要 CSS 优先级 我们的CSS特异性冲突 CSS Layers 来拯救 Sass 预处理器支持 浏览器支持 总结 这篇文章介绍了一种名为CSS层叠的技术,用于优化CSS重置过程。它解释了CSS重…

re学习(18)[ACTF新生赛2020]rome1(Z3库+window远程调试)

参考视频: Jamiexu793的个人空间-Jamiexu793个人主页-哔哩哔哩视频 代码分析: 其主要内容在两个while循环中(从定义中可知flag位16个字符)。 看第二个循环,可知是比较result和经过第一个循环得到的v1比较(就是flag…

免费使用Elasticsearch官网15天

注册登录 点击创建索引时候会给你展示一个密钥。这个密钥就是你的用户密码 如下图 你的服务地址大致样式如下 https://huihai.es.us-central1.gcp.cloud.es.io 这里需要你输入用户密码,上面图4(图中),下载时候的用户密码 登录完成 这样就能…

使用docker的常见bug

BUG1:磁盘被占满导致docker无法使用 docker ps 【查看docker能否正常使用】 正常的话会打印下图信息: 不正常的话打印如下图信息: journalctl -u docker 【查看docker无法正常使用的原因】,本次测试中遇到下图bug,意思是/var/l…

Flutter 跳转应用市场评分——超简洁实现

最近在做flutter跳转去应用市场评分的功能,虽然是一个很小的功能,但是要做的既简单又高效,同时又能把细节考虑到,还是有坑要走的,这边记录一下。 背景 做应用市场相关的运营,在app内增加评分引导&#xf…

前端学习——JS进阶 (Day3)

编程思想 面向过程编程 面向对象编程 (oop) 构造函数 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta http-equiv"X-UA-Compatible" content"IEedge"><meta name"viewport…

python+allure+jenkins

目录 前言 在 python 中使用 allure 1. 安装 pytest 2. 安装 pytest-allure-adaptor 3. 使用 pytest 执行测试用例并生成 allure 中间报告&#xff08;此步骤可以省略&#xff0c;因为在 jenkins job 中会配置执行类似的命令&#xff09; 4. Jenkins 中安装Allure Jenkin…

行业追踪,2023-07-17,静待减速器macd反转

自动复盘 2023-07-17 凡所有相&#xff0c;皆是虚妄。若见诸相非相&#xff0c;即见如来。 k 线图是最好的老师&#xff0c;每天持续发布板块的rps排名&#xff0c;追踪板块&#xff0c;板块来开仓&#xff0c;板块去清仓&#xff0c;丢弃自以为是的想法&#xff0c;板块去留让…

Spring源码学习-核心注解,架构以及整体流程

目录 核心注解核心组件接口分析基础接口ResourceResourceLoaderResourceResourceLoader BeanFactory结构解析图示核心的子接口 BeanDefinition加载注册流程(xml形式的) BeanDefinitionReaderBeanDefinitionRegistryApplicationContext类结构图示结构解析 Aware接口类图xxAware是…

什么是计算机蠕虫?

计算机蠕虫诞生的背景 计算机蠕虫的诞生与计算机网络的发展密切相关。20世纪60年代末和70年代初&#xff0c;互联网还处于早期阶段&#xff0c;存在着相对较少的计算机和网络连接。然而&#xff0c;随着计算机技术的进步和互联网的普及&#xff0c;计算机网络得以迅速扩张&…

Windows系统如何查看物理cpu核数?

Step1&#xff1a;WinR 打开cmd; Step2&#xff1a;输入dxdiag后&#xff0c;回车&#xff1b; Step3&#xff1a;即可查看&#xff1a;