VsCode中的项目代码规范-editorconfig-prettier-ESLint
一、editorconfig
EditorConfig 有助于为不同 IDE 编辑器上处理同一项目的多个开发人员维护一致的编码风格。
1.安装插件:EditorConfig for VS Code
2.在项目根目录下面新建文件命名为 .editorconfig
,并增加以下配置
root = true
[*] # 表示所有文件适用
charset = utf-8 # 设置文件字符集为 utf-8
indent_style = space # 缩进风格(tab | space)
indent_size = 2 # 缩进大小
end_of_line = lf # 控制换行类型(lf | cr | crlf)
trim_trailing_whitespace = true # 去除行首的任意空白字符
insert_final_newline = true # 始终在文件末尾插入一个新行
[*.md] # 表示仅 md 文件适用以下规则
max_line_length = off
trim_trailing_whitespace = false
二、prettier
Prettier 是一款强大的代码格式化工具,支持 JavaScript、TypeScript、CSS、SCSS、Less、JSX、Angular、Vue、GraphQL、JSON、Markdown 等语言,基本上前端能用到的文件格式它都可以搞定,是当下最流行的代码格式化工具。
1.安装prettier
npm install prettier -D
2.配置.prettierrc.json文件:
- useTabs:使用tab缩进还是空格缩进,选择false;
- tabWidth:tab是空格的情况下,是几个空格,选择2个;
- printWidth:当行字符的长度,推荐80,也有人喜欢100或者120;
- singleQuote:使用单引号还是双引号,选择true,使用单引号;
- trailingComma:在多行输入的尾逗号是否添加,设置为
none
,比如对象类型的最后一个属性后面是否加一个,; - semi:语句末尾是否要加分号,默认值true,选择false表示不加;
{
"useTabs": false,
"tabWidth": 2,
"printWidth": 80,
"singleQuote": true,
"trailingComma": "none",
"semi": false
}
3.创建.prettierignore忽略文件
/dist/*
.local
.output.js
/node_modules/**
**/*.svg
**/*.sh
/public/*
4.VSCode需要安装prettier的插件
5.VSCod中的配置
- settings =>format on save => 勾选上
- settings => editor default format => 选择 prettier
以上5个步骤后,在写完代码点保存(Ctl+s)就可以自动格式化代码
6.配置一次性修改的命令,在package.json的scripts节点中配置:
"prettier": "prettier --write ."
这个命令主要是为了一次性批量更新之前的代码格式 ,即在vscode终端中输入命令,就可以更改项目所有代码格式
npm run prettier
三、ESLint
ESLint主要用于规范代码规则
1.一样要安装插件
2..eslintrc.js文件配置
require('@rushstack/eslint-patch/modern-module-resolution')
module.exports = {
root: true,
extends: [
'plugin:vue/vue3-essential',
'eslint:recommended',
'@vue/eslint-config-typescript',
'@vue/eslint-config-prettier',
'plugin:prettier/recommended' //与prettier插件代码规范保持一致
],
parserOptions: {
ecmaVersion: 'latest'
},
rules: {
'vue/multi-word-component-names': 'off'
}
}
eslint和prettier两个插件规则不一样会产生冲突,解决方案:
安装插件
npm install eslint-plugin-prettier eslint-config-prettier -D
正常情况下,vue在创建项目时,如果选择prettier,那么这两个插件会自动安装
在eslint的extends节点新增配置项 'plugin:prettier/recommended'