vscode内prettier与eslint格式化规则冲突原因和方案剖析

本文解决VSCode中JS和Vue文件保存时因格式化程序冲突导致的死循环问题,提供四种解决方案,包括关闭格式化、调整格式化模式、统一格式化工具及规则等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

问题现象

vscode内,js、vue文件保存时格式化程序冲突,出现死循环。

原因分析

1、vscode的扩展eslint默认开启检测和修复代码。
2、vscode 设置里可以配置onsave时开启formate,并配置格式化使用的程序,有时默认配置了用prettier格式化。
3、prettier与eslint格式化规则冲突了。

解决方案

方案一:将用户与工作区的format on save都关掉(最快解)
方案二:如不关闭format on save ,也可以将用户与工作区的其中一个的format on save mode改为modifications解决。(不彻底)
方案三:将vscode默认的格式程序改为用eslint,操作方案是,右键进入配置或者ctrl+,搜索Editor: Default Formatter的方式改为eslint。(一般解)
方案四:将prettier格式化的规则改为和eslint一样,修改各个的*config.**配配置文件,如使用开源插件配置eslint-plugin-prettier、prettier-eslint 。(最优解)

其他总结

用户和工作区配置优先级。

  1. 默认第一梯度,工作区优先于用户配置。

  2. 第二梯度,如工作区设置取消勾选,其实默认无配置,这时用户区勾选的话,一样按勾选生效。 可用format on save测试。

  3. 如工作区和用户区都设置了同一个属性,如工作区设置的值范围更宽松,用户区设置的更严格,则按用户区严格的配置生效。 可用format onsave mode,file和modify测试。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值