Vue的代码规范和配置

集成editorconfig配置

EditorConfig可以让不同系统电脑,或者不同IDE编辑器中,让不同的开发者保持一致的编码风格,Vue官方的editorconfig内容如下

js 复制代码
# https://editorconfig.org

root = true

[*]
charset = utf-8
indent_style = space
indent_size = 2
end_of_line = lf
insert_final_newline = true
trim_trailing_whitespace = true

[*.md]
insert_final_newline = false
trim_trailing_whitespace = false
  • charset 设置文件的字符集
  • indent_style 缩进风格
  • indent_size 缩进大小
  • end_of_line 换行类型 (lf | cr | crlf)
  • insert_final_newline 始终在文件末尾插入一个新行
  • trim_trailing_whitespace 去除行首的任意空白字符

VSCode需要安装一个插件:EditorConfig for VS Code

使用prettier工具

Prettier是一款强大的代码格式化工具,基本上前端用到的文件格式它都可以搞定

1、install:npm install prettier -D 2、配置 .prettierrc 文件

js 复制代码
{
  "useTabs": false,
  "tabWidth": 2,
  "printWidth": 80,
  "singleQuote": true,
  "trailingComma": "none",
  "semi": false
}
  • useTabs: 使用tab缩进还是空格缩进
  • tabWidth:tab是空格的情况下,是几个空格
  • printWidth:当前行字符的长度
  • singleQuote:使用单引号还是双引号,选择true,使用单引号
  • trailingComma:在多行输入的尾逗号是否添加
  • semi:语句末尾是否要加分号,默认值true,选择false表示不加

3、创建 .prettierignore 忽略文件

js 复制代码
/dist/*
.local
.output.js
/node_modules/**

**/*.svg
**/*.sh

/public/*
/.npmrc/**

4、需要在VSCode中安装prettier插件 『Prettier - Code formatter』 5、代码格式化: 可以在package.json 的script脚本下配置

json 复制代码
"prettier": "prettier --write ."

使用 npm run prettier,会找到 node_modules下的.bin目录下的prettier工具格式化项目里的所有文件(prettierignore里配置的忽略文件不会被格式化)

使用ESLint检测

1、创建Vue项目的时候,如果选择了ESLint,Vue会默认帮我们配置需要的ESLint环境 2、VSCode需要安装ESLint插件 3、解决eslint和prettier冲突的问题

arduino 复制代码
安装插件:npm install eslint-plugin-prettier eslint-config-prettier -D

如果在创建Vue项目时选择了prettier,那么这两个插件会自动安装 4、添加prettier插件

json 复制代码
extends: [
    'plugin:vue/vue3-essential',
    'eslint:recommended',
    '@vue/typescript/recommended',
    'plugin:prettier/recommended'
  ],

添加的就是'plugin:prettier/recommended'这一行。

Note:我的实际操作中,保存文件的时候prettier一直没有生效,后来发现是之前安装了Volar插件,某些情况下会接管部分格式化的功能,这时vscode里存在两种格式化的方案。我的处理方式是把prettier设置成默认格式化方式:

  1. Command+Shift+P调出命令面板,输入format document with......
  2. 选择配置默认格式化程序
  3. 选择到prettier

相关截图:

或者可以在 settings.json 的工作区设置中添加如下配置:

json 复制代码
"editor.defaultFormatter": "esbenp.prettier-vscode",
"editor.formatOnSave": true,
"volar.format.enable": false, // 禁止 Volar 进行格式化
"[vue]": {
    "editor.defaultFormatter": "esbenp.prettier-vscode"
}
相关推荐
小二·37 分钟前
Python Web 开发进阶实战:无障碍深度集成 —— 构建真正包容的 Flask + Vue 应用
前端·python·flask
niucloud-admin8 小时前
web 端前端
前端
胖者是谁12 小时前
EasyPlayerPro的使用方法
前端·javascript·css
EndingCoder12 小时前
索引类型和 keyof 操作符
linux·运维·前端·javascript·ubuntu·typescript
liux352812 小时前
Web集群管理实战指南:从架构到运维
运维·前端·架构
沛沛老爹12 小时前
Web转AI架构篇 Agent Skills vs MCP:工具箱与标准接口的本质区别
java·开发语言·前端·人工智能·架构·企业开发
小光学长13 小时前
基于Web的长江游轮公共服务系统j225o57w(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。
前端·数据库
Joe55614 小时前
vue2 + antDesign 下拉框限制只能选择2个
服务器·前端·javascript
ChangYan.14 小时前
monorepo 多包管理识别不到新增模块,解决办法
前端·chrome
Jinuss14 小时前
React元素创建介绍
前端·react.js