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

1544年前 (2021-09-23)tuya saas框架2503

 根据官方文档的步骤,本地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命令全局配置后,你需要重新拉取代码。这一步很关键。


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

分享给朋友:

相关文章

java.lang.ClassNotFoundException: oracle.jdbc.driver.OralceDriver

 java.lang.ClassNotFoundException: Oracle.jdbc.driver.OracleDriver这个错误;原因可能是 少了驱动 ,少包class...

mysql 建存储过程 实例

drop PROCEDURE if EXISTS sp_lasqCREATE PROCEDURE sp_lasq()    COMMENT '超过5天自动立案&#...

java 实现自增编号+Oracle序列

原理:a,a++,fillStr(a, 9, false, "0");新建序列:create sequence seq_lineminvalue 1maxvalue 9999999...

jfinal 定时任务

1、去quartz官网下载 定时任务jar包(http://www.quartz-scheduler.org/)quartz-*.*.*.jar2、创建定时任务:public class SetAre...

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

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

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

如果总是有人说你瘦,如何神回复

如果总是有人说你瘦,如何神回复

恩,我不做领导很多年了邓小平爷爷 也很瘦哦, 并不影响成为一个伟大的男人我这是高寿(瘦)别说我瘦,我只是胖的不明显而已!我就是瘦着玩玩,谁像你胖得那么认真。嗳,你还别说,你胖了! 恩 ,真的!真的吗?...

发表评论

访客

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