首页 > 其他分享 >VScode中配置ESlint+Prettier详细步骤(图文详情)

VScode中配置ESlint+Prettier详细步骤(图文详情)

时间:2024-12-25 17:29:19浏览次数:5  
标签:vue 格式化 VScode Prettier prettier 设置 true ESlint

VScode中配置ESlint+Prettier详细步骤(图文详情)

前置环境:

node 18.19.0

vite 3.2.11

vue 3.2.47

本文将不在演示vue3基础工程创建,如果还没有vue3项目工程请参考文章:
Vite创建Vue3工程并引入ElementPlus(图文详细)

本文的ESlint+Prettier版本:

ESlint 8.57.1

Prettier 3.2.5

1 editorconfig设置

什么是 .editorconfig

.editorconfig 是一个跨编辑器和IDE的文件格式,旨在帮助开发者定义和维护一致的代码格式规则。它由 EditorConfig 项目维护,并得到了广泛的支持,包括 Visual Studio Code、Sublime Text、Atom、IntelliJ IDEA 等许多流行的编辑器和IDE。

.editorconfig 文件是一种用于定义和维护代码格式一致性的配置文件。它可以帮助开发者确保在不同编辑器和IDE中,代码的缩进、换行符、字符编码等格式保持一致。通过使用 .editorconfig 文件,团队成员可以在不同的操作系统和开发环境中工作,而不必担心代码风格的不一致性。

打开vscode,在项目根目录新建.editorconfig文件并添加如下代码

# 告诉EditorConfig插件,这是根文件,不用继续往上查找
root = true

# 匹配全部文件
[*]
# 缩进风格,可选space、tab
indent_style = space
# 缩进的空格数
indent_size = 2
# 设置字符集
charset = utf-8
# 结尾换行符,可选lf、cr、crlf
end_of_line = lf
# 在文件结尾插入新行
trim_trailing_whitespace = true
# 删除一行中的前后空格
insert_final_newline = true

[*.md]
insert_final_newline = false
trim_trailing_whitespace = false

image-20241222151048056

2 Eslint与Prettier设置

2.1 安装依赖包和插件

打开vscode搜索ESlint和Prettier插件进行安装(安装完毕后需重启vscode)

ESLint插件

  • 用于代码风格检查和静态分析。
  • 与 Vue 3 的 ESLint 插件一起使用,确保符合 Vue 3 的规范。

image-20241220173753198

Prettier插件

  • 代码格式化工具,帮助保持代码风格的一致性。
  • 与 Vue 3 的 Prettier 插件一起使用,确保与 Vue 3 的风格一致。

image-20241220173812929

安装ESlint和Prettier到项目中

注意:在Eslint的9.0版本之后变化较大,请注意和Prettier版本使用搭配!

使用终端打开项目根目录执行安装

安装Eslint

npm install eslint@8.57.1 --save-dev

安装prettier

npm install prettier@3.2.5 --save-dev
npm i -D eslint-plugin-prettier @vue/eslint-config-prettier eslint-plugin-vue
2.2 Prettier设置

1.Prettier配置文件

在VScode的项目工程根目录下新建配置文件.prettierrc和.prettierignore

.prettierrc文件(用于prettier格式化规则设置,可根据自身需要修改)

{
	"printWidth": 220,
	"tabWidth": 2,
	"useTabs": true,
	"semi": true,
	"singleQuote": false,
	"quoteProps": "as-needed",
	"trailingComma": "none",
	"bracketSpacing": true,
	"jsxBracketSameLine": false,
	"arrowParens": "avoid",
	"endOfLine": "auto",
	"jsxSingleQuote": false,
	"vueIndentScriptAndStyle": true
}

文件释义

{  
  "printWidth": 220, // 此设置定义了每行代码的最大字符数。若代码行超出此长度,格式化工具会尝试将其拆分为多行。  
  "tabWidth": 2, // 此设置指定一个制表符(tab)的宽度,即它等同于多少个空格。这有助于确保代码缩进的一致性。  
  "useTabs": true, // 此设置决定是否使用制表符进行缩进。若设为true,则使用制表符;反之,则使用空格。  
  "semi": true, // 此设置决定是否在语句末尾添加分号。若设为false,则不添加。  
  "singleQuote": false, // 此设置决定是否优先使用单引号。若设为true,则字符串默认使用单引号。  
  "quoteProps": "as-needed", // 此设置定义对象属性是否添加引号。设为"as-needed"时,仅在属性名不是有效标识符时添加引号。  
  "trailingComma": "none", // 此设置决定在多行时是否添加尾随逗号。设为"none"时,不添加尾随逗号。  
  "bracketSpacing": true, // 此设置决定在对象字面量的括号间是否添加空格,例如:`{ foo: bar }`。  
  "jsxBracketSameLine": false, // 在JSX中,若表达式跨多行,此设置决定`>`的位置。设为false时,`>`位于新行。  
  "arrowParens": "avoid", // 此设置决定单参数箭头函数的参数是否使用圆括号。设为"avoid"时,尽可能不使用圆括号。  
  "endOfLine": "lf", // 此设置定义行尾使用的字符。设为"lf"时,使用LF(换行符)作为行尾字符。  
  "jsxSingleQuote": false, // 在JSX中,此设置决定是否使用单引号。设为false时,默认使用双引号。  
  "vueIndentScriptAndStyle": true // 在Vue文件中,此设置决定`<script>`和`<style>`标签内的代码是否缩进。  
}

.prettierignore文件(用于prettier需要忽略格式化的文件或目录)

/dist/*
.local
.output.js
/node_modules/**

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

/public/*

image-20241222154604242

2. VScode配置Prettier插件

请务必按照以下步骤对Prettier插件进行设置,否则Prettier插件自动格式化代码可能将无效!

image-20241222152305936

添加或修改prettier配置文件路径

image-20241222152434476

取消默认配置勾选

image-20241222152523398

添加vscode保存时自动格式化

image-20241222152732053

勾选保存时自动格式化

image-20241222152822533

勾选保存时默认格式化为prettier

image-20241222152955008

3 Prettier测试

修改app.vue文件如下,打乱格式

<template>
	      <div>
<h1></h1>
				   </div>
					  <div></div>
		
</template>

<script setup>
	import {} from 'vue'
</script>

<style lang="scss" scoped></style>

在vscode中按下ctrl+s保存后,则会自动使用prettier设置的规则进行格式化,例如对齐html标签和js脚本的双引号和加分号

image-20241222154923991

2.3 ESlint设置

1.Eslint配置文件

在VScode的项目工程根目录下新建配置文件.eslintrc.cjs和.eslintignore

.eslintrc.cjs(用于eslint校验规则设置)

module.exports = {
	root: true,
	env: {
		browser: true,
		es2021: true,
		node: true
	},
	extends: ["plugin:vue/vue3-recommended", "eslint:recommended", "plugin:prettier/recommended"],
	parserOptions: {
		ecmaVersion: 12,
		sourceType: "module"
	},
	plugins: ["vue"],
	rules: {
		// 自定义规则
		"prettier/prettier": "error", // 将 Prettier 的格式化规则作为 ESLint 错误处理
		"no-console": process.env.NODE_ENV === "production" ? "warn" : "off",
		"no-debugger": process.env.NODE_ENV === "production" ? "warn" : "off",
		"space-before-function-paren": "off", // 确保方法名与括号之间没有空格检查
		"vue/multi-word-component-names": "off" //关闭组件命名规则
	}
};

.eslintignore(用于eslint需要忽略格式化的文件或目录)

*.sh
node_modules
*.md
*.woff
*.ttf
.vscode
.idea
dist
/public
/docs
.husky
.local
/bin
.eslintrc.cjs
prettier.config.js
src/assets
tailwind.config.js
postcss.config.js

image-20241222155408795

2. VScode设置Eslint

在VScode设置里启用eslint

image-20241222161641716

配置Settings.json加入vue文件校验

image-20241222161610251

  "eslint.validate": [
    "javascript",
    "javascriptreact",
    "html",
    { "language": "vue", "autoFix": true }
  ]

3.测试Eslint

在app.vue添加如下测试代码

<template>
	<div>
		<h1></h1>
	</div>
	<div></div>
</template>

<script setup>
	import {} from 'vue';
console.log("Eslint test");
	console.log("hello world!")
</script>

<style lang="scss" scoped></style>

可以看到对应不符合校验规则的已经爆红(建议重启vscode)

image-20241222161950222

Eslint校验规则默认已经读取自prettier的规则配置,需要修改校验规则直接修改.prettierrc文件,或自行在.eslintrc.cjs文件里添加规则,但是需要注意和prettier的格式化规则冲突问题。

至此,综上所属已经完在vscode下eslint+prettier的组合规则校验+格式化规则添加。

标签:vue,格式化,VScode,Prettier,prettier,设置,true,ESlint
From: https://blog.csdn.net/hjl_and_djj/article/details/144674178

相关文章

  • js压缩代码还原的vscode插件
    1.Prettier-Codeformatter:Prettier是一个非常流行的代码格式化工具,支持多种语言,包括JavaScript。它可以按照预设的规则自动格式化你的代码。对于压缩的代码,它能够很好地展开并格式化。2.Beautify:Beautify插件专为美化HTML,CSS,和JavaScript代码而设计。你可......
  • vscode怎么连接远程服务器使用jupyter和pycharm?安装了jupyter插件为什么还是打不开jup
    本文主要从下面三个方面进行1.vscode的优势2.怎么安装并配置vscode3.怎么使用jupyter和pycharm4.我遇到的问题(已解决)(1)显示你即将连接到不受visualstudiocode版本(2)解决安装了jupyter插件但是还是打不开.ipynb文件无法打开笔记本编辑器类型为"jupyter-notebook"的资源......
  • VSCode配置启动Vue项目
    VSCode配置启动Vue项目|Id|Title|DateAdded|SourceUrl|PostType|Body|BlogId|Description|DateUpdated|IsMarkdown|EntryName|CreatedTime|IsActive|AutoDesc|AccessPermission||-------------|-------------|-------------|-------------|--......
  • 定制最小linux系统 - 4: 使用vscode单步调试
    内核毕竟是一个很大的工程,有时看得一头雾水,如果能单步调试的话,对于理解可能有亿点帮助.下面一步步搭建qemu+vscode环境对内核进行单步调试.第一步编译内核定制最小linux系统-1:编译linux内核-CSDN博客https://blog.csdn.net/weixin_46766770/article/details/1......
  • Vscode实现应用qss样式表
    qss简介qss(QtStyleSheets)是一种基于CSS的样式语言,用于描述用户界面元素的外观和感觉。qss可以让用户在不修改代码的情况下,轻松地自定义应用程序的外观。其语法基本如下:objectName{property:value;}其中,objectName是要设置样式的对象名,property是要设置的属性,value是属......
  • VScode + cmake编写Qt程序
    本机环境Ubuntu20.04Qt5.12.81.安装Vscode直接在官网下载对应的deb包安装即可。下载后在deb包所在目录执行如下命令安装deb包。sudodpkg-i安装包名.deb然后在应用程序中应该就有了Vscode的图标了。2.安装cmake与gccg++先安装cmakesudoapt-getinstall......
  • 【VScode】第三方GPT编程工具-CodeMoss安装教程
    一、CodeMoss是什么?CodeMoss是一款集编程、学习和办公于一体的高效工具。它兼容多种主流平台,包括VSCode、IDER、Chrome插件、Web和APP等,支持插件安装,尤其在VSCode和IDER上的表现尤为出色。无论你是编程新手还是资深开发者,CodeMoss都能为你提供强大的支持。二、CodeMoss的......
  • VScode统计代码行数
    在VSCode中统计代码行数可以通过安装和使用特定的插件或命令行工具来实现。‌‌使用插件统计代码行数‌:‌VSCodeCounter‌:通过VSCode的扩展市场安装“VSCodeCounter”插件,安装后可以使用快捷键Shift+Ctrl+P打开命令输入栏,输入“VSCodeCounter:Countlinesindirectory”......
  • 离开Jetbrains拥抱VsCode: 离开大便拥抱大便
    为什么要离开Jetbrains原因很简单,Jetbrains对于AICoding的支持非常烂其中大部分的AICoding都是通过插件来实现的,但是体验非常不好,而且开发难度比之Vscode高了许多,很多同时支持Jetbrains以及VsCode的插件,更新速度有巨大的区别例如Continue,VsCode上可以做到周更,......
  • 离开Jetbrains拥抱VsCode: 离开大便拥抱大便
    为什么要离开Jetbrains原因很简单,Jetbrains对于AICoding的支持非常烂其中大部分的AICoding都是通过插件来实现的,但是体验非常不好,而且开发难度比之Vscode高了许多,很多同时支持Jetbrains以及VsCode的插件,更新速度有巨大的区别例如Continue,VsCode上可以做到周更,......