保存 Visual Studio 代码时避免自动缩进

Avoid auto indent when saving in Visual Studio Code

我想在保存一个(javascript)文件到Visual Studio代码时避免自动缩进行为,而不关闭完整的自动缩进。

我有这段代码(如果可能我想保留这个缩进):

const $tab_a = $('tab_a')
const $tab_b = $('tab_b')

;[$tab_a, $tab_b].forEach($e => $e.onclick = () => {
  if ($e.className) return
  $tab_a.classList.toggle('active')
  $tab_b.classList.toggle('active')
})

但是,每次我用 Visual Studio 代码保存时,它都会像这样更改缩进:

const $tab_a = $('tab_a')
const $tab_b = $('tab_b')

  ;[$tab_a, $tab_b].forEach($e => $e.onclick = () => {
    if ($e.className) return
    $tab_a.classList.toggle('active')
    $tab_b.classList.toggle('active')
  })

我在 Visual Studio 代码中尝试了不同的设置:

  1. 编辑器:自动缩进(默认:完整)-> none
  2. 编辑器:环绕缩进(默认:相同)-> none
  3. 所有组合并重新启动VSCode

不幸的是,他们中的任何一个对我有用。

任何帮助将不胜感激。

注意:我没有使用扩展。

要在保存时关闭格式:

  1. 转到文件 |首选项 > 设置
  2. 在搜索框中输入 "save"
  3. 在列表中,选择文本编辑器 |格式化
  4. 取消勾选 编辑器:保存时格式化

"editor.formatOnSave" 设置为 settings.json 中的 false

当我这样做时,当我保存文件时,你的例子被单独留下了。 (而启用设置后,当我保存它时,它会按照你在问题中描述的那样重新格式化。)

选中setting.json(ctrl+shift+p 然后选择'Preferences: Open Settings (Json)')为:

"editor.formatOnSave": true/flase

默认情况下应将其设置为 false,但可能某些扩展已切换为 true,因此只需将其改回 false。

希望对您有所帮助

我遇到了同样的问题,当我点击保存我的 js 文件时,它缩进了 4 个空格而不是 2

我找到了这个 github 话题 File reformatting to 4 spaces for indentation on save. #28327

然后我搜索了JS-CSS-HTML Formatter extension,已经安装了,于是开始配置:

Press F1, enter Formatter Config, open the config file:

它将在新选项卡中打开设置,您只需将选项 indent_size 从 4 调整为 2