当前位置: 首页 > news >正文

【前端】【vscode】【.vscode/settings.json】为单个项目配置自动格式化和开发环境

VSCode 工作区配置详解

本文详细解释项目中 .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"},
}

📝 配置文件概览

这个配置文件主要包含以下几个方面的设置:

  • 编辑器格式化行为
  • 代码质量检查
  • 语言特定配置
  • 插件集成设置

🔧 详细配置解析

1. 编辑器格式化设置

{"editor.formatOnSave": true,"editor.formatOnPaste": true,"editor.formatOnType": true
}

作用说明:

  • formatOnSave: 保存文件时自动格式化代码
  • formatOnPaste: 粘贴代码时自动格式化
  • formatOnType: 输入时实时格式化(如输入分号、括号后)

实际效果:

  • 确保代码风格一致性
  • 减少手动格式化的工作量
  • 提高代码可读性

2. 代码操作设置

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

作用说明:

  • source.fixAll.eslint: 保存时自动修复所有 ESLint 错误
  • source.organizeImports: 保存时自动整理导入语句
  • explicit: 明确启用该功能

实际效果:

  • 自动修复代码质量问题
  • 移除未使用的导入
  • 按字母顺序排列导入语句

3. 默认格式化器设置

{"editor.defaultFormatter": "esbenp.prettier-vscode"
}

作用说明:

  • 设置 Prettier 为默认代码格式化器
  • esbenp.prettier-vscode 是 Prettier 插件的 ID

实际效果:

  • 统一使用 Prettier 进行代码格式化
  • 遵循项目的 .prettierrc 配置

4. 语言特定格式化器

{"[vue]": {"editor.defaultFormatter": "Vue.volar"},"[javascript]": {"editor.defaultFormatter": "esbenp.prettier-vscode"},"[typescript]": {"editor.defaultFormatter": "esbenp.prettier-vscode"}
}

作用说明:

  • 为不同文件类型指定专用格式化器
  • Vue 文件使用 Volar 插件格式化
  • JS/TS 文件使用 Prettier 格式化

实际效果:

  • Vue 文件获得更好的模板、脚本、样式格式化
  • 确保每种语言都使用最适合的格式化工具

5. Prettier 配置

{"prettier.enable": true,"prettier.requireConfig": false,"prettier.useEditorConfig": false
}

作用说明:

  • prettier.enable: 启用 Prettier 插件
  • prettier.requireConfig: 不强制要求配置文件(会自动查找)
  • prettier.useEditorConfig: 不使用 EditorConfig(优先使用 .prettierrc)

实际效果:

  • Prettier 会自动查找项目根目录的 .prettierrc 配置
  • 确保使用项目统一的格式化规则

6. ESLint 配置

{"eslint.validate": ["javascript","typescript","vue"],"eslint.format.enable": true
}

作用说明:

  • eslint.validate: 指定 ESLint 验证的文件类型
  • eslint.format.enable: 启用 ESLint 格式化功能

实际效果:

  • 对 JS/TS/Vue 文件进行代码质量检查
  • 显示代码问题和警告
  • 提供自动修复建议

7. Vue 开发配置

{"volar.takeOverMode.enabled": false
}

作用说明:

  • 禁用 Volar 的接管模式
  • 允许 TypeScript 插件和 Volar 共存

实际效果:

  • 获得更好的 TypeScript 支持
  • 避免插件冲突

8. TypeScript 配置

{"typescript.preferences.includePackageJsonAutoImports": "auto"
}

作用说明:

  • 自动从 package.json 中的依赖提供导入建议

实际效果:

  • 智能导入提示
  • 减少手动输入导入语句

9. Emmet 配置

{"emmet.includeLanguages": {"vue-html": "html","vue": "html"}
}

作用说明:

  • 在 Vue 文件中启用 Emmet 快捷输入
  • 将 Vue 模板视为 HTML 处理

实际效果:

  • 在 Vue 模板中可以使用 Emmet 语法
  • 提高 HTML 编写效率

10. 文件关联配置

{"files.associations": {"*.vue": "vue"}
}

作用说明:

  • 确保 .vue 文件被正确识别为 Vue 文件类型

实际效果:

  • 获得正确的语法高亮
  • 启用 Vue 特定功能

11. Tailwind CSS 配置

{"tailwindCSS.includeLanguages": {"vue": "html","vue-html": "html"}
}

作用说明:

  • 在 Vue 文件中启用 Tailwind CSS 智能提示
  • 将 Vue 模板视为 HTML 处理

实际效果:

  • 在 Vue 模板中获得 Tailwind 类名自动补全
  • 显示 CSS 预览和文档

🎯 配置的整体效果

开发体验提升

  1. 自动化格式化:无需手动格式化,保存即可
  2. 代码质量保证:自动修复常见问题
  3. 智能提示:丰富的自动补全和导入建议
  4. 多语言支持:针对不同文件类型的专门优化

团队协作优势

  1. 统一代码风格:所有开发者使用相同配置
  2. 减少代码审查工作:自动处理格式问题
  3. 提高代码质量:实时检查和修复
  4. 降低学习成本:新成员快速上手

项目集成

  • 配置会自动读取项目的 .prettierrceslint.config.js
  • 确保 VSCode 行为与项目构建工具一致
  • 支持项目特定的代码规范

📚 相关文件

  • .prettierrc - Prettier 格式化规则
  • eslint.config.js - ESLint 代码质量规则
  • .vscode/extensions.json - 推荐插件列表

🔄 使用建议

  1. 重新加载窗口:修改配置后重新加载 VSCode
  2. 安装推荐插件:确保所有相关插件已安装
  3. 检查配置冲突:避免全局设置覆盖项目设置
  4. 定期更新:保持插件和配置的最新状态

http://www.xdnf.cn/news/1198009.html

相关文章:

  • 关系与逻辑运算 —— 寄存器操作的 “入门钥匙”
  • 分布式系统中Token续期问题解决方案
  • AIC 2025 热点解读:如何构建 AI 时代的“视频神经中枢”?
  • 四、搭建springCloudAlibaba2021.1版本分布式微服务-加入openFeign远程调用和sentinel流量控制
  • 嵌入式——单片机的独立按键
  • git stash 命令详解
  • leetcode_560 和为K的子数组
  • C语言——————学习笔记(自己看)
  • 2025.7.27总结—新励成
  • Leetcode 3629. Minimum Jumps to Reach End via Prime Teleportation
  • 学习游戏制作记录(改进投掷剑的行为)7.27
  • 孤儿进程、僵尸进程和守护进程
  • 【element-ui】HTML引入本地文件出现font找不到/fonts/element-icons.woff
  • Android CameraX 使用指南:简化相机开发
  • 从零搭建3D激光slam框架-基于mid360雷达节点实现
  • [10月考试] C
  • 论文阅读-IGEV
  • Java进阶7:Junit单元测试
  • Windows10系统使用Cmake4.1.0构建工具+Visual Studio2022编译Opencv4.11教程
  • LabelImg:简洁高效的图像标注工具和下载
  • B站直播视频 | 深度讲解 Yocto 项目:从历史、架构到实战与趋势
  • Vue vuex模块化编码
  • 网络基础19:OSPF多区域实验
  • 中级全栈工程师笔试题
  • Maven之多模块项目管理
  • 什么是加密货币中的节点?
  • 【Linux系统编程】环境变量,进程地址空间与进程控制
  • 使用GIS中基于森林的分类与回归模型来估算房屋价值
  • 工业控制系统安全之 Modbus 协议中间人攻击(MITM)分析与防范
  • 解决ubantu系统下matplotlib中文乱码问题