Delete eslint(prettier/prettier)错误

今天在用HBuilder开发uniapp项目时,想换成vscode进行开发,但是用vscode打开之前的项目,eslint报错一片红

解决方案:

方案一:一个一个文件的选择,具体操作如下,手动把CRLF换成LF。缺点:文件太多,换不过来,太鸡肋

方案二:yarn run lint

比上面省事,eslint错误消失,但暂存区多了n个文件改动记录,对比W

orking tree也没发现任何不同。

参考资料:“error Delete ⏎ prettier/prettier” in .vue files’’

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

三、配置.prettierrc文件

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

"endOfLine": "auto"

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

我直接加了这行代码解决问题的

四、最佳方案

问题根源:

罪魁祸首是git的一个配置属性:core.autocrlf

由于历史原因,windows下和linux下的文本文件的换行符不一致。

Windows在换行的时候,同时使用了回车符CR(carriage-return character)和换行符LF(linefeed character)
而Mac和Linux系统,仅仅使用了换行符LF

老版本的Mac系统使用的是回车符CR

因此,文本文件在不同系统下创建和使用时就会出现不兼容的问题。

我的项目仓库中默认是Linux环境下提交的代码,文件默认是以LF结尾的(工程化需要,统一标准)。

当我用windows电脑git clone代码的时候,若我的autocrlf(在windows下安装git,该选项默认为true)为true,那么文件每行会被自动转成以CRLF结尾,若对文件不做任何修改,pre-commit执行eslint的时候就会提示你删除CR。

现在可以理解ctrl+s和yarn run lint 方案为何可以修复eslint错误了吧,因为Git自动将CRLF转换成了LF。

最佳实践:

现在VScode,Notepad++编辑器都能够自动识别文件的换行符是LF还是CRLF。

如果你用的是windows,文件编码是UTF-8且包含中文,最好全局将autocrlf设置为false。

git config --global core.autocrlf false

注意:git全局配置之后,你需要重新拉取代码。

本文由博客一文多发平台 OpenWrite 发布!

Delete ␍eslint(prettierprettier)错误的更多相关文章

  1. .NetCore 网站DELETE请求错误405.0 - Method Not Allowed 因为使用了无效方法

    .netCore网站Delete请求405错误 解决方案 1:在启用或关闭Windows功能 –> Internet Information Services 关闭WebDAV发布(这种方式可能 ...

  2. javascript之delete操作符

    理解delete 理论 代码段的类型 执行上下文 活动对象 / 变量对象 属性的特性 内置属性与 DontDelete 未声明的赋值 Firebug的困惑 在eval中删除变量 浏览器兼容性 Geck ...

  3. C++中new与delete问题学习

    一.new char与delete问题 . 问题程序 [cpp] view plaincopy #include <iostream> using namespace std; void ...

  4. Problem creating zip: Execution exce ption (and the archive is probably corrupt but I could not delete it): Java heap space -> [Help 1]

    今天mvn编译的时候报错:  [ERROR] Failed to execute goal org.apache.maven.plugins:maven-assembly-plugin:2.5.5:s ...

  5. eslint相关工具

    eslint工具 1. vscode搜索eslint安装,就可以在写代码时报eslint的错误了 2.文件 --> 首选项 --> 设置 --> 选ESLint --> 勾选A ...

  6. C++ 操作符new和delete

    参考资料: http://en.cppreference.com/w/cpp/memory/new/operator_new http://en.cppreference.com/w/cpp/memo ...

  7. Eslint 配置及规则说明(报错)

    https://blog.csdn.net/violetjack0808/article/details/72620859 https://blog.csdn.net/hsl0530hsl/artic ...

  8. maven打包出错: Failed to clean project: Failed to delete

    maven打包出错: Failed to clean project: Failed to delete 出现这种错误,通常是由于您已启动了另一个tomcat 进程,导致报错,关闭tomcat进程即可 ...

  9. Eslint使用指南

    本文主要讲如何在前端项目中引入Eslint静态代码检查工具,提升代码质量和统一代码风格,避免一些低级错误. 一 引入静态代码检查工具的目的 在团队协作中,为避免低级 Bug.产出风格统一的代码,会预先 ...

  10. 有关奇葩的mex编程时的matlab出现栈内存错误的问题

    错误提示信息 (ntdll.dll) (MATLAB.exe中)处有未经处理的异常:0xC0000374:堆已损坏 该错误的表现是,matlab调用.mexw64函数时,第一次调用正常,第二次调用出现 ...

随机推荐

  1. 苹果公司对蓝牙免提AT指令的扩充

    介绍 苹果公司对蓝牙HF profile进行了一些HF AT指令的扩充.不过为了兼容起见,尽量实现HF标准规范规定的内容,如果标准规范没有规定相应的内容,为了适配苹果设备新增的功能,还是可以适应苹果公 ...

  2. linux火狐添加flash插件

    从官网上 adobe flash player 全版本通用安装  找到 linux 版本的 .gz 包, 复制下载链接 linux命令 su - cd /tmp wget -P /tmp https: ...

  3. mysql零基础-3

    第17章_触发器 在实际开发中,我们经常会遇到这样的情况:有 2 个或者多个相互关联的表,如 商品信息 和 库存信息 分 别存放在 2 个不同的数据表中,我们在添加一条新商品记录的时候,为了保证数据的 ...

  4. #Python #OpenCV 使用Python为你的圣诞节增添更多乐趣

    ​  目录 1.前言 2.目标与效果展示 3.下载OpenCV图形识别库 4.下载python支持的v2模块 5.图片素材 6.代码 1.前言 ​ 编辑 Merry Christmas!今天是2022 ...

  5. Elasticsearch 查询小笔记

    2.x 版本,组合多查询https://www.elastic.co/guide/cn/elasticsearch/guide/current/combining-queries-together.h ...

  6. angular项目语言切换功能

    1.NzI18nService服务 参考:https://ng.ant.design/docs/i18n/zh 2.ngx-translate插件 1)安装依赖 npm install @ngx-tr ...

  7. 第四天 while 嵌套循环语句

    python全栈开发笔记第四天 while 嵌套循环语句 while 条件 while 条件 print() print() 例题:num1 =int(input("num1:") ...

  8. FCC 中级算法题 Binary Agents

    Binary Agents 传入二进制字符串,翻译成英语句子并返回. 二进制字符串是以空格分隔的. String.charCodeAt() String.fromCharCode() 思路: (1)把 ...

  9. swagger 兼容 docker 转发 配置

    app.UseSwagger(c => { c.PreSerializeFilters.Add((swagger, httpReq) => { string swagger_index_u ...

  10. 一次CentOS 出现“Too many open files"错误的解决

    一.原因分析 出现本问题,应该是打开文件最多数量不足,默认是1024个,在生产环境中经常出现该问题. 使用ulimit -a 查看打开文件数量限制 二.解决方案A(临时有效) 1.如果是非root用户 ...