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

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

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


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

分享给朋友:

相关文章

js限制input只能输入数字、英文、汉字

 1.只能输入数字和英文的:  <input onkeyup="value=value.replace(/[\W]/g,'') "...

freeMarker 截取字符串(操作字符串函数 )

<#if c.proSummary!?length gt 25>  <!-- 如果长度 >25 截取25个字-->    ...

坑爹的ShowModalDialog 后台传值解决方案

 今天遇到需要ShowModalDialog打开页面,通过acceptanceIds 参数值后台过滤出相应结果前台  var url = "loadAccept...

dwz+jfinal 市县下拉菜单二级联动(实例)

在DWZ文档中对组合框combox的是这样描述的:在传统的select 用class 定义:class=”combox”, html 扩展:保留原有属性name,  增加了属性:ref。re...

jquery 获取焦点

当文本框或下拉等必填时,如果没有输入就给予提示并使该文本框获得焦点!如果是js,对象.focus()即可。可是如果是jQuery, 这样$("#aa") 返回的就不是DOM对象而是...

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

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

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

发表评论

访客

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