VSCode的Eslint 和 Prettier插件无法并存怎么办?
Admin 2023-04-03 群英技术资讯 578 次浏览
本次环境皆为 @vue/cli
默认安装带有的 eslint@7.32.0
,VSCode
插件版本:
Eslint v2.4.0
Prettier v9.10.4
首先我们需要知道为什么使用Eslint
和 Prettier
,下面先介绍两者的单独用法
Javascript
Vue
Typescript
等文件的代码规范检测工具,当代码写法不符合时,会在终端进行报错提醒,阻止你的serve
服务。为了在 VSCode
中检测到我们代码不规范时,能自动修复错误写法,我们需要安装 VSCode
的插件 ESLint
安装后在 setting.json
中配置如下并重启编辑器:
{ "editor.codeActionsOnSave": { "source.fixAll.eslint": true } }
之后再编写 js
等文件保存时都会自动格式化,保证 Eslint
再也不会报错
一种规范化的写法规则,包含各种类型文件,其中部分Javascript
等规则,会和 Eslint
不一样,使用时只要在VSCode
中安装Prettier
插件即可
安装后在 setting.json
中配置如下并重启编辑器:
{ "editor.formatOnSave": true, "editor.defaultFormatter": "esbenp.prettier-vscode", }
表示所有类型的文件的格式化都使用 Prettier
如果两者都启用,则因为规则冲突,在JS
等文件中,会出现保存时,先运行了ESLint
,然后再运行了 Prettier
,导致 @eslint
检测依然报错
既然使用 eslint
规范,我的理解上当然是不能去修改eslint
,因为这是共用规范,修改了就没有再使用的必要了,所以我是不推荐修改eslint
的方式。
我的做法也很简单,在eslint
作用的文件类型中,继续使用eslint
进行格式化,在其他类型文件中,使用prettier
进行格式化
eslint
继续使用 codeActionsOnSave
进行设置,把 eslint
作用范围的文件类型的formatOnSave
关闭
{ "editor.tabSize": 2, // 开启eslint "editor.codeActionsOnSave": { "source.fixAll.eslint": true }, // 开启自动格式化 "editor.formatOnSave": true, // 设置所有文件默认格式化工具为prettier "editor.defaultFormatter": "esbenp.prettier-vscode", // eslint范围内的文件类型,关闭保存时格式化 "[javascript]": { "editor.formatOnSave": false }, "[typescript]": { "editor.formatOnSave": false }, "[vue]": { "editor.formatOnSave": false }, "[javascriptreact]": { "editor.formatOnSave": false } }
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
ES6提供了更接近面向对象(注意:javascript本质上是基于对象的语言)语言的写法,引入了Class(类)这个概念,作为对象的模板,下面这篇文章主要给大家介绍了关于JavaScript ES6中class定义类的相关资料,需要的朋友可以参考下
这篇文章主要介绍了解决elementui表格操作列自适应列宽,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
这篇文章主要为大家详细介绍了vue更多筛选项小组件的使用方法,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
这篇文章主要为大家详细介绍了vue实现商品详情页功能之商品选项卡,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
这篇文章主要讲解前端的状态管理,状态管理李娜就想到:Vuex、Redux、Flux、Mobx等等方案,不论哪种方案只要内容一多起来似乎都是令人头疼的问题,今天来聊一聊前端的状态管理,感兴趣的小伙伴可以参考参考下面文字具体内容
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008