为 Vue3 + TypeScript + Vite 项目配置 Prettier代码格式化

下面是为 Vue3 + TypeScript + Vite 项目单独配置 Prettier 的详细步骤(不包含 ESLint 配置):

1. 安装 Prettier

bash 复制代码
npm install --save-dev prettier

2. 创建 Prettier 配置文件

在项目根目录下创建 .prettierrc.js(或 .prettierrc.json):

javascript 复制代码
module.exports = {
  // 单引号
  singleQuote: true,
  // 句尾不使用分号
  semi: false,
  // 每行代码最大长度
  printWidth: 100,
  // 对象属性末尾加逗号(尽可能)
  trailingComma: 'all',
  // 箭头函数单参数时不加括号
  arrowParens: 'avoid',
  // HTML 文件空格敏感性
  htmlWhitespaceSensitivity: 'ignore',
  // Vue 文件中 script 和 style 标签缩进
  vueIndentScriptAndStyle: true,
  // 换行符自动检测
  endOfLine: 'auto'
}

或者使用 JSON 格式(.prettierrc.json):

json 复制代码
{
  "singleQuote": true,
  "semi": false,
  "printWidth": 100,
  "trailingComma": "all",
  "arrowParens": "avoid",
  "htmlWhitespaceSensitivity": "ignore",
  "vueIndentScriptAndStyle": true,
  "endOfLine": "auto"
}

3. 创建忽略文件

创建 .prettierignore 文件,指定不需要格式化的文件/目录:

复制代码
node_modules
dist
*.md
*.json
*.yaml
*.yml

4. 添加格式化脚本

package.jsonscripts 部分添加:

json 复制代码
{
  "scripts": {
    "format": "prettier --write .",
    "format:check": "prettier --check ."
  }
}

5. 配置 VS Code(可选)

如果你使用 VS Code,可以安装 Prettier 扩展,然后创建 .vscode/settings.json

json 复制代码
{
  "editor.defaultFormatter": "esbenp.prettier-vscode",
  "editor.formatOnSave": true,
  "[vue]": {
    "editor.defaultFormatter": "esbenp.prettier-vscode"
  },
  "[typescript]": {
    "editor.defaultFormatter": "esbenp.prettier-vscode"
  }
}

6. 使用 Prettier

  • 手动格式化整个项目:

    bash 复制代码
    npm run format
  • 检查格式问题(不修改文件):

    bash 复制代码
    npm run format:check

7. 与 Vite 集成(可选)

虽然 Prettier 通常不需要与 Vite 直接集成,但如果你想在开发过程中自动格式化,可以安装:

bash 复制代码
npm install --save-dev vite-plugin-prettier

然后在 vite.config.ts 中添加:

typescript 复制代码
import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import prettier from 'vite-plugin-prettier'

export default defineConfig({
  plugins: [
    vue(),
    prettier({
      // 配置选项,与.prettierrc.js一致
      singleQuote: true,
      semi: false,
      // 其他配置...
    })
  ]
})

这样配置后,你的 Vue3 + TypeScript + Vite 项目就拥有了完整的 Prettier 格式化支持,可以保持代码风格一致。

相关推荐
hedley(●'◡'●)1 分钟前
基于cesium和vue的大疆司空模仿程序
前端·javascript·vue.js·python·typescript·无人机
qq5_8115175153 分钟前
web城乡居民基本医疗信息管理系统信息管理系统源码-SpringBoot后端+Vue前端+MySQL【可直接运行】
前端·vue.js·spring boot
百思可瑞教育4 分钟前
构建自己的Vue UI组件库:从设计到发布
前端·javascript·vue.js·ui·百思可瑞教育·北京百思教育
百锦再4 分钟前
Vue高阶知识:利用 defineModel 特性开发搜索组件组合
前端·vue.js·学习·flutter·typescript·前端框架
CappuccinoRose30 分钟前
JavaScript 学习文档(二)
前端·javascript·学习·数据类型·运算符·箭头函数·变量声明
这儿有一堆花36 分钟前
Vue 是什么:一套为「真实业务」而生的前端框架
前端·vue.js·前端框架
全栈前端老曹1 小时前
【MongoDB】深入研究副本集与高可用性——Replica Set 架构、故障转移、读写分离
前端·javascript·数据库·mongodb·架构·nosql·副本集
NCDS程序员1 小时前
v-model: /v-model/ :(v-bind)三者核心区别
前端·javascript·vue.js
夏幻灵1 小时前
CSS三大特性:层叠、继承与优先级解析
前端·css
小杨同学呀呀呀呀2 小时前
Ant Design Vue <a-timeline>时间轴组件失效解决方案
前端·javascript·vue.js·typescript·anti-design-vue