本文详细解释项目中 .vscode/settings.json
配置文件的每个设置项,帮助理解 VSCode 的自动格式化和开发环境配置。
//.vscode/settings.json
{
"editor.formatOnSave": true,
"editor.formatOnPaste": true,
"editor.formatOnType": true,
"editor.codeActionsOnSave": {
"source.fixAll.eslint": "explicit",
"source.organizeImports": "explicit"
},
"editor.defaultFormatter": "esbenp.prettier-vscode",
"[vue]": {
"editor.defaultFormatter": "Vue.volar"
},
"[javascript]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[typescript]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[json]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[css]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[scss]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[html]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"prettier.enable": true,
"prettier.requireConfig": false,
"prettier.useEditorConfig": false,
"eslint.validate": [
"javascript",
"typescript",
"vue"
],
"eslint.format.enable": true,
"volar.takeOverMode.enabled": false,
"typescript.preferences.includePackageJsonAutoImports": "auto",
"emmet.includeLanguages": {
"vue-html": "html",
"vue": "html"
},
"files.associations": {
"*.vue": "vue"
},
"tailwindCSS.includeLanguages": {
"vue": "html",
"vue-html": "html"
},
}
这个配置文件主要包含以下几个方面的设置:
{
"editor.formatOnSave": true,
"editor.formatOnPaste": true,
"editor.formatOnType": true
}
作用说明:
formatOnSave
: 保存文件时自动格式化代码formatOnPaste
: 粘贴代码时自动格式化formatOnType
: 输入时实时格式化(如输入分号、括号后)实际效果:
{
"editor.codeActionsOnSave": {
"source.fixAll.eslint": "explicit",
"source.organizeImports": "explicit"
}
}
作用说明:
source.fixAll.eslint
: 保存时自动修复所有 ESLint 错误source.organizeImports
: 保存时自动整理导入语句explicit
: 明确启用该功能实际效果:
{
"editor.defaultFormatter": "esbenp.prettier-vscode"
}
作用说明:
esbenp.prettier-vscode
是 Prettier 插件的 ID实际效果:
.prettierrc
配置{
"[vue]": {
"editor.defaultFormatter": "Vue.volar"
},
"[javascript]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[typescript]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
}
}
作用说明:
实际效果:
{
"prettier.enable": true,
"prettier.requireConfig": false,
"prettier.useEditorConfig": false
}
作用说明:
prettier.enable
: 启用 Prettier 插件prettier.requireConfig
: 不强制要求配置文件(会自动查找)prettier.useEditorConfig
: 不使用 EditorConfig(优先使用 .prettierrc)实际效果:
.prettierrc
配置{
"eslint.validate": [
"javascript",
"typescript",
"vue"
],
"eslint.format.enable": true
}
作用说明:
eslint.validate
: 指定 ESLint 验证的文件类型eslint.format.enable
: 启用 ESLint 格式化功能实际效果:
{
"volar.takeOverMode.enabled": false
}
作用说明:
实际效果:
{
"typescript.preferences.includePackageJsonAutoImports": "auto"
}
作用说明:
实际效果:
{
"emmet.includeLanguages": {
"vue-html": "html",
"vue": "html"
}
}
作用说明:
实际效果:
{
"files.associations": {
"*.vue": "vue"
}
}
作用说明:
实际效果:
{
"tailwindCSS.includeLanguages": {
"vue": "html",
"vue-html": "html"
}
}
作用说明:
实际效果:
.prettierrc
和 eslint.config.js
.prettierrc
- Prettier 格式化规则eslint.config.js
- ESLint 代码质量规则.vscode/extensions.json
- 推荐插件列表