当前位置: 首页 > 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.lryc.cn/news/601282.html

相关文章:

  • 人工智能——图像梯度处理、边缘检测、绘制图像轮廓、凸包特征检测
  • 设计模式(十三)结构型:代理模式详解
  • springboot基于Java与MySQL库的健身俱乐部管理系统设计与实现
  • 设计模式(十一)结构型:外观模式详解
  • Qt 窗口 工具栏QToolBar、状态栏StatusBar
  • IDEA安装Key Promoter X插件记录快捷键使用频率提高生产率
  • 【笔记】活度系数推导
  • 07.4-使用 use 关键字引入路径
  • 一、搭建springCloudAlibaba2021.1版本分布式微服务-父工程搭建
  • Kafka——消费者组消费进度监控都怎么实现?
  • SparkSQL — get_json_object函数详解(解析 json)
  • Vue 四个map的使用方法
  • Java面试实战:企业级性能优化与JVM调优全解析
  • mac neo4j install verifcation
  • 1.qt历史版本安装与多版本开发(解决被拦截问题)
  • 前缀和-560.和为k的子数组-力扣(LeetCode)
  • Qt C++ GUI 函数参数速查手册:基础与布局
  • HDFS基础命令
  • Python 列表推导式与生成器表达式
  • 3-基于FZ3B的Vitis AI DPU加速平台搭建
  • Vscode的常用快捷键(摆脱鼠标计划)
  • CodeBLEU:面向代码合成的多维度自动评估指标——原理、演进与开源实践
  • Jmeter的元件使用介绍:(七)后置处理器详解
  • 【NLP实践】一、中文短句情感二分类实现并提供RestfulApi服务调用
  • Mitk教程案例项目编译
  • Java AI面试实战:Spring AI与RAG技术落地
  • 【Qt开发】信号与槽(二)-> 信号和槽的使用
  • LeetCode第349题_两个数组的交集
  • UDS 0x29 身份验证服务 Authentication service
  • KNN 算法中的各种距离:从原理到应用