最近在学习前端代码规范方面的东西,虽然之前一直在使用eslint,prettier来规范代码,但有些东西还是觉得不是很懂。最近查看了一些资料,终于了解了一些。其中eslint和prettier之间冲突解决的方案及最佳实现方案,网上有很多,我就不多说了。看了这些资料之后,决定在自己的项目上实践一下。
实现方案:安装eslint-config-prettier来关闭eslint中与prettier相互冲突的规则,安装eslint-plugin-prettier来赋予eslint用prettier格式化代码的能力
操作及问题:安装之后,单独运行eslint检查src下的js文件,报错
TypeError: Error while loading rule 'prettier/prettier': context.getPhysicalFilename is not a
function
原因:参考一下链接 https://github.com/prettier/eslint-plugin-prettier/issues/435
翻译一下:
如果您最近在现有 React 项目上升级到 eslint-plugin-prettier@^4 并收到此错误“prettier/prettier”:context.getPhysicalFilename.使用低于 7.28.0 的 ESLint 版本时会发生此错误
因为eslint是项目原来就有的,这次没有重新安装,版本是低于7.28.0的,于是升级eslint版本之后,问题解决!