Prettier 扩展不在文件保存时格式化代码
Prettier extension not formatting code on file save
我已经为 VS Code 安装了 prettier 扩展,将其设置为默认格式化程序,还在 VS Code 的设置文件中将保存格式设置为 true,并且文件设置为在一段时间后自动保存。
"editor.defaultFormatter": "esbenp.prettier-vscode",
"editor.formatOnSave": true,
"files.autoSave": "afterDelay"
但是当文件在延迟 2 秒后自动保存时,prettier 没有格式化我的代码。代码仅在 i:
时被格式化
- 使用选项 + Shift + F 键盘快捷键手动格式化代码。
- 按命令 + S
这是我的 .prettierrc
文件
{
"trailingComma": "es5",
"tabWidth": 4,
"semi": true,
"singleQuote": true
}
如何在文件保存时自动设置更漂亮的代码格式?
经过一番搜索,我发现下面的设置
"editor.formatOnSave": true
仅在以下情况下有效:
- 代码格式化程序可用。
- 文件未设置为延迟保存。
- 并且编辑器不能关闭。
我使用以下设置将 prettier 设置为默认格式化程序:
"editor.defaultFormatter": "esbenp.prettier-vscode"
但我已将文件设置为在延迟后自动保存,具体如下设置:
"files.autoSave": "afterDelay"
此设置是导致我遇到问题的原因。
"files.autoSave"
设置可以具有以下值之一:
"off"
: 脏编辑器永远不会自动保存。
"afterDelay"
:脏编辑器在配置files.autoSaveDelay
后自动保存。
"onFocusChange"
:编辑器失去焦点时自动保存脏编辑器
"onWindowChange"
: 当 window 失去焦点时自动保存脏编辑器。
将 "files.autoSave"
设置为 "afterDelay"
以外的任何可能值都可以解决此问题。我通过将 "files.autoSave"
设置为 "onFocusChange"
.
解决了这个问题
我已经为 VS Code 安装了 prettier 扩展,将其设置为默认格式化程序,还在 VS Code 的设置文件中将保存格式设置为 true,并且文件设置为在一段时间后自动保存。
"editor.defaultFormatter": "esbenp.prettier-vscode",
"editor.formatOnSave": true,
"files.autoSave": "afterDelay"
但是当文件在延迟 2 秒后自动保存时,prettier 没有格式化我的代码。代码仅在 i:
时被格式化- 使用选项 + Shift + F 键盘快捷键手动格式化代码。
- 按命令 + S
这是我的 .prettierrc
文件
{
"trailingComma": "es5",
"tabWidth": 4,
"semi": true,
"singleQuote": true
}
如何在文件保存时自动设置更漂亮的代码格式?
经过一番搜索,我发现下面的设置
"editor.formatOnSave": true
仅在以下情况下有效:
- 代码格式化程序可用。
- 文件未设置为延迟保存。
- 并且编辑器不能关闭。
我使用以下设置将 prettier 设置为默认格式化程序:
"editor.defaultFormatter": "esbenp.prettier-vscode"
但我已将文件设置为在延迟后自动保存,具体如下设置:
"files.autoSave": "afterDelay"
此设置是导致我遇到问题的原因。
"files.autoSave"
设置可以具有以下值之一:
"off"
: 脏编辑器永远不会自动保存。"afterDelay"
:脏编辑器在配置files.autoSaveDelay
后自动保存。"onFocusChange"
:编辑器失去焦点时自动保存脏编辑器"onWindowChange"
: 当 window 失去焦点时自动保存脏编辑器。
将 "files.autoSave"
设置为 "afterDelay"
以外的任何可能值都可以解决此问题。我通过将 "files.autoSave"
设置为 "onFocusChange"
.