tuya SaaS前端框架本地运行时候报错Delete `␍`eslint(prettier/prettier)

1545年前 (2021-09-23)tuya saas框架4275

 根据官方文档的步骤,本地idea运行tuya的 SaaS前端框架,在执行编译命令yarn run build 时报错Delete `␍`eslint(prettier/prettier)。如图:


网上搜索了很多方案,没有解决。其中包括执行:yarn run lint --fix  

及配置.prettierrc文件  "endOfLine": "auto"。最终都没有解决问题。


最好的方案是:

    问题的根源:是由于windows下和linux下的文本文件的换行符不一致。是git的一个配置属性:core.autocrlf 


    Windows在换行的时候,同时使用了回车符CR(carriage-return character)和换行符LF(linefeed character).

    而Mac和Linux系统,仅仅使用了换行符LF

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

WindowsLinux/MacOld Mac(pre-OSX)
CRLFLFCR
‘\n\r’‘\n’‘\r’

      因此,框架中的文件在不同系统下运行就会出现不兼容的问题。

     而下载下来的SaaS前端框架,默认是Linux环境下运行的代码,文件默认是以LF结尾的。本地Windows运行就会报错。

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


     所以如果你本地windows运行,文件编码是UTF-8且包含中文,最好在cmd下全局将autocrlf设置为false。

git config --global core.autocrlf false

     注意:git命令全局配置后,你需要重新拉取代码。这一步很关键。


本文原创,转载必追究版权。

分享给朋友:

相关文章

freemarker 判断日期变量为空处理 及InvalidReferenceException异常处理

at freemarker.core.InvalidReferenceException.getInstance(InvalidReferenceException.java:98);InvalidR...

freeMarker Jfinal 获取session里的值

问题:freeMaker session取值的常用格式都试过 session["xxx"],session.xxx 直接xxx 都取不出来?????解决:JFinal与Struts...

Java 实现用户资料完整度的前端显示(或根据填写资料自动评分)

前端使用 Bootstrap 的进度条组件显示百分比,后台读取权重并计算信息完整度,并将计算的结果返回给前端,供页面显示。CSS1<link href="static/sc/...

程序员为什么不炫富

程序员为什么不炫富

 提到互联网,尤其是互联网工程师们,人们往往会想到两个词:“高薪”和“高压”。在知乎上“为什么很少见工资高的程序员炫富?”的问题下,一个得票很高的答案是:“乐意炫富的人,不是因为有钱,而是因为付出的少...

如果有人夸你漂亮,你会如何回复

如果有人夸你漂亮,你会如何回复

       因为长得好看,会经常被别人夸长得漂亮,该如何机智而又优雅的回复,才能表达出谦虚而又不失敷衍的??如果是对方谦虚:谢谢,你也很漂...

MySQL、Oracle数据库字段分别设置默认系统时间

MySQL设置方法:1、将字段类型设为  TIMESTAMP 2、将默认值设为  CURRENT_TIMESTAMPMySQL 脚本实现用例--添加CreateTime 设置默认时...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。