为什么 vscode 在保存时将我的代码格式化两次?

问题描述 投票:0回答:4

我的编辑器设置为在保存时修复所有问题。然而,一旦我保存,它就会格式化代码来解决问题,然后瞬间恢复到原始的未修复和未格式化的代码。这是我更新 vscode 后开始发生的。

eslint
4个回答
10
投票

并不是说这会是你的情况,但值得检查:

  1. 确保此设置为 false:
    "editor.formatOnSave": false
  2. 将此添加到
    settings.json
    文件中:
"editor.codeActionsOnSave": {
    "source.fixAll.eslint": true
  },

如果您没有安装 ESLint / Prettier,则执行相反的操作,这意味着只需确保

formatOnSave
设置为 true 并且您没有启用其他格式化程序。


2
投票

我也遇到了同样的问题,当我卸载了 Prettier 和 eslint、重置了规则和所有东西时,这真的让我丧命......

直到我看到我有那个

lonefy.vscode-js-css-html-formatter
包,它在设置中保持沉默,但仍然强制执行自己固执己见的格式规则。卸载它就成功了:)


1
投票

我按照此答案中概述的步骤解决了我的问题 https://stackoverflow.com/a/52259752/9491881

简短回答:我需要:

"editor.formatOnSave": false,
"javascript.format.enable": false

0
投票

我通过删除此设置解决了我的问题:

  "editor.codeActionsOnSave": {
    "source.organizeImports": "explicit",
    "source.fixAll.eslint": "explicit"
  },

自动导入格式化导入,然后 eslint 重新格式化代码。

© www.soinside.com 2019 - 2024. All rights reserved.