Vue3+Vite+TS项目集成ESlint +Prettier实现代码规范检查和代码格式化

这篇具有很好参考价值的文章主要介绍了Vue3+Vite+TS项目集成ESlint +Prettier实现代码规范检查和代码格式化。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

创建项目

我在这里直接是通过vite提供的默认模板来创建一个vue3 + ts的项目。这里可以cmd,然后npm -v来查看版本。

# 如果npm 的版本是6.x版本,则使用下面这条命令创建项目
yarn create vite@latest vite-vue3-ts --template vue-ts

# 如果npm 的版本是7+ 以上版本,则使用以下命令
yarn create vite@latest vite-vue3-ts -- --template vue-ts

这样一个vue3 + ts的项目就创建好了,使用vscode打开该项目,然后执行yarn安装依赖
依赖安装完成后,执行  yarn dev 启动项目就可以在浏览器中正常访问了。

vite+vue3+ts项目怎么整理代码,代码规范,前端,vue.js

 

安装初始化ESlint

yarn add eslint -D
初始化ESlint:
  • 执行 npx eslint --init  命令初始化eslint
  • 根据提示依次选择以下选项
You can also run this command directly using 'npm init @eslint/config'.
 
? How would you like to use ESLint? ...
To check syntax and find problems
 
? What type of modules does your project use? ...
JavaScript modules (import/export)
 
? Which framework does your project use? ...
Vue.js
 
? Does your project use TypeScript? » No / Yes
Yes
 
? Where does your code run? ... (用空格选中两个,回车确定)
√ Browser
√ Node
 
? What format do you want your config file to be in? ...
JavaScript
 
The config that you've selected requires the following dependencies:
eslint-plugin-vue@latest @typescript-eslint/eslint-plugin@latest @typescript-eslint/parser@latest
? Would you like to install them now?
No
  • 最后一个提示我们选择No,然后手动npm安装提示的依赖
yarn add -D eslint-plugin-vue@latest @typescript-eslint/eslint-plugin@latest @typescript-eslint/parser@latest
  • 初始化完成后会在项目根目录下看到一个.eslintrc.cjs的文件,这个文件就是eslint的配置文件
module.exports = {
    "env": {
        "browser": true,
        "es2021": true,
        "node": true
    },
    "extends": [
        "eslint:recommended",
        "plugin:vue/vue3-essential",
        "plugin:@typescript-eslint/recommended"
    ],
    "overrides": [
    ],
    "parser": "@typescript-eslint/parser",
    "parserOptions": {
        "ecmaVersion": "latest",
        "sourceType": "module"
    },
    "plugins": [
        "vue",
        "@typescript-eslint"
    ],
    "rules": {
    }
}
  • 在package.json,添加命令
 "scripts": {
 	// 执行该命令eslint会检测当前项目下所有的.vue,.js,.ts,.jsx,.tsx文件是否符合eslint的代码规范,并尝试自动修复
    "lint": "eslint . --ext .vue,.js,.ts,.jsx,.tsx --fix"
  },

执行 yarn lint 命令,会看到有如下报错

vite+vue3+ts项目怎么整理代码,代码规范,前端,vue.js

  • 修改.eslintrc.cjs 文件
module.exports = {
  "env": {
      "browser": true,
      "es2021": true,
      "node": true
  },
  "extends": [
      "eslint:recommended",
      "plugin:vue/vue3-essential",
      "plugin:@typescript-eslint/recommended"
  ],
  "overrides": [
  ],
  // 配置解析vue文件
  "parser":"vue-eslint-parser",
  "parserOptions": {
      "ecmaVersion": "latest",
      "parser": "@typescript-eslint/parser",
      "sourceType": "module"
  },
  "plugins": [
      "vue",
      "@typescript-eslint"
  ],
 // 添加规则
 "rules": {
   "@typescript-eslint/ban-types": [
      "error",
      {
          "extendDefaults": true,
          "types": {
              "{}": false
          }
      }
    ]
  }
}

然后重新执行  yarn lint 命令就不会报错了。

安装配置Prettier

安装prettier:
yarn add prettier -D
配置prettier:

在项目的根目录下创建.prettierrc.cjs文件,这个文件是Prettier的配置文件,可以在这个文件中配置Prettier格式化代码的规则,添加配置如下:

// prettier的默认配置文件
module.exports = {
  // 一行最多 100 字符
  printWidth: 100,
  // 使用 2 个空格缩进
  tabWidth: 2,
  // 不使用缩进符,而使用空格
  useTabs: false,
  // 不尾随分号
  semi: false,
  // 使用单引号
  singleQuote: true,
  // 多行逗号分割的语法中,最后一行不加逗号
  trailingComma: 'none',
   // 单个参数的箭头函数不加括号 x => x
  arrowParens: 'avoid',     
  // 对象大括号内两边是否加空格 { a:0 }
  bracketSpacing: true,      
}

配置VScode保存时自动格式化代码

在vscode中安装以下两个插件:
  • ESLint:安装这个插件,它会自动查找项目中的ESlint规则,给出验证提示,ESlint也可以对代码进行格式化
  • Prettier - Code formatter:安装这个插件对代码进行格式化,但并不关注代码质量潜在问题的检查

vite+vue3+ts项目怎么整理代码,代码规范,前端,vue.js

vite+vue3+ts项目怎么整理代码,代码规范,前端,vue.js

然后修改   settings.json

vite+vue3+ts项目怎么整理代码,代码规范,前端,vue.js

 vite+vue3+ts项目怎么整理代码,代码规范,前端,vue.js

 在setttings.json文件中添加一些配置:

{
  // vscode默认启用了根据文件类型自动设置tabsize的选项
  "editor.detectIndentation": false,
  // 重新设定tabsize
  "editor.tabSize": 2,
  // 每次保存的时候自动格式化
  "editor.formatOnSave": true,
  "editor.codeActionsOnSave": {
    // 使用eslint来fix,包括格式化会自动fix和代码质量检查会给出错误提示
    "source.fixAll.eslint": true
  },
  // 把prettier设置为vscode默认的代码格式化工具
  "editor.defaultFormatter": "esbenp.prettier-vscode",
  // vue文件的默认格式化工具选择prettier
  "[vue]": {
    "editor.defaultFormatter": "esbenp.prettier-vscode"
  }
}

配置到这里当我们在vscode编辑器中保存代码时,就可以自动格式化代码了!

解决ESLint与Prettier的冲突

冲突的原因: 因为ESLint和Prettier都可以进行代码格式化,而且我们在setttings.json文件中同时开启了ESLint和Prettier进行代码格式化,所以两者重叠的格式化规则不一致时就导致了格式化代码时出现冲突的问题。

解决冲突:
安装 eslint-config-prettier 和 eslint-plugin-prettier 依赖:

yarn add eslint-config-prettier eslint-plugin-prettier -D

eslint-config-prettier 会关闭ESLint中有关代码格式化的配置
eslint-plugin-prettier 把Prettier配置成ESLint的一个插件,让其当做一个linter规则来运行


然后在 .eslintrc.cjs 中 extends的最后添加一个配置:

  extends: [
    'eslint:recommended',
    'plugin:vue/vue3-essential',
    'plugin:@typescript-eslint/recommended',
    "plugin:prettier/recommended" // 解决ESlint和Prettier冲突
  ],

这样配置后,ESLint进行格式化时就会忽略跟Prettier重叠的格式规则,这些交由Prettier来进行格式化,这样就解决了ESlint和Prettier的冲突问题了。

配置vite运行的时候自动检测eslint规范

vite运行的时候默认是不会自动检测eslint规范的,如下图,我们在main.ts文件中声明了变量a,但是没有使用,但是vite可以正常运行却没有给出eslint警告,而执行npm run lint命令时却可以看到有eslint的警告信息

vite+vue3+ts项目怎么整理代码,代码规范,前端,vue.js

 如果想要vite运行的时候自动检测eslint规范,只需要安装vite-plugin-eslint依赖和添加相关配置即可。

安装vite-plugin-eslint:
yarn add vite-plugin-eslint -D
配置 vite.config.ts文件:
import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import eslintPlugin from 'vite-plugin-eslint'

// https://vitejs.dev/config/
export default defineConfig({
  plugins: [
    vue(),
    // 配置vite在运行的时候自动检测eslint规范
    eslintPlugin({
      include: ['src/**/*.ts', 'src/**/*.js', 'src/**/*.vue', 'src/*.ts', 'src/*.js', 'src/*.vue']
    })
  ]
})

在vite.config.ts文件中添加了vite-plugin-eslint插件的配置后,就会看到vite在运行的时候对代码进行eslint规范检查了。

vite+vue3+ts项目怎么整理代码,代码规范,前端,vue.js

 以上就是在Vue3+Vite+TS目集成ESlint +Prettier实现代码规范检查和代码格式化的具体实现,希望对各位老铁有所帮助!文章来源地址https://www.toymoban.com/news/detail-820025.html

到了这里,关于Vue3+Vite+TS项目集成ESlint +Prettier实现代码规范检查和代码格式化的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【vue3+ts项目】配置eslint校验代码工具,eslint+prettier+stylelint

    package.json中 vite后面加上 --open 回答问题如下: 使用eslint仅检查语法,还是检查语法及错误,选第二个 使用的是什么模块,选第一个 项目使用的是什么框架,选vue 项目中使用TyoeScript ,选yes 项目运行在哪,选浏览器 创建的配置类型需要什么类型的,选Javascript 需要安装这些

    2024年02月09日
    浏览(53)
  • 超级详细 最新 vite4+vue3+ts+element-plus+eslint-prettier 项目搭建流程

    系列文章目录 【element-plus】 table表格每行圆角解决方案 element也通用 【Vue3+Vite+Ts+element-plus】使用tsx实现左侧栏菜单无限层级封装 超级详细GitBook和GitLab集成步骤【linux环境】 1.1、项目创建 执行以下代码将vite将会自动生成初始的 vite4+vue3+ts的项目模板,pnpm、npm、yarn 选择一种执

    2024年02月04日
    浏览(59)
  • 基于Vue3+Vite+TS+ESLint+Prettier+Husky+lint-staged+commitlint+stylelint的项目构建

    博客后台管理系统使用后的是基于Vue3+Vite+TS+ESLint+Prettier的开发,具体项目构建如下 ESLint: 控制代码质量 Prettier: 控制代码风格 2.1、安装ESLint、Prettier相关相关包 eslint: ESLint的核心代码库 prettier: Prettier的格式化代码的核心代码库 eslint-config-airbnb-base: airbnb的代码规范(依赖pl

    2024年02月07日
    浏览(44)
  • [GN] 使用vue3+vite+ts+prettier+eslint

    做到代码格式等统一,此时,esint和prettier就要登场了。 eslint是代码检测工具,可以检测出你代码中潜在的问题,比如使用了某个变量却忘记了定义。 prettier是代码格式化工具,作为代码格式化工具,能够统一你或者你的团队的代码风格。 = 安装prettier+eslint包,并做一系列的

    2024年01月16日
    浏览(46)
  • 从零开始创建一个vue3+vite项目并集成element-plus、eslint以及prettier

    项目git地址, 欢迎修改提交,不足地方还请补充批评指正! 项目git地址 ESLint 是一个用于识别和报告在 ECMAScript/JavaScript 代码中发现的模式的工具,其目标是使代码更加一致并避免错误。 ESLint 是完全插件化的。每条规则都是一个插件,你可以在运行时添加更多。你还可以添

    2024年04月09日
    浏览(51)
  • vue3+ts项目02-安装eslint、prettier和sass

    项目创建 生成配置文件 安装其他插件 修改.eslintrc.cjs 添加.eslintignore https://prettier.io/ 添加.prettierrc.cjs 添加.prettierignore https://stylelint.io/ 配置.stylelintrc.cjs 配置忽略文件.stylelintignore package.json增加配置 执行 yarn format 会自动格式化css、js、html、json还有markdown代码

    2024年02月06日
    浏览(39)
  • vite+react+ts+eslint+prettier构建react开发项目

    目录 一、构建项目 二、安装eslint和prettier的依赖 三、修改.eslintrc.cjs,创建.prettierrc.cjs 1、.eslintrc.cjs文件配置 2、ESlint忽略文件.eslintignore 3、.prettierrc.cjs文件配置  4、prettierrc忽略配置文件.prettierignore

    2024年02月11日
    浏览(33)
  • 从0搭建Vue3组件库(十一): 集成项目的编程规范工具链(ESlint+Prettier+Stylelint)

    欲先善其事,必先利其器。一个好的项目是必须要有一个统一的规范,比如代码规范,样式规范以及代码提交规范等。统一的代码规范旨在增强团队开发协作、提高代码质量和打造开发基石,所以每个人必须严格遵守。 本篇文章将引入 ESLint+Prettier+Stylelint 来对代码规范化。 ESLint

    2024年02月02日
    浏览(34)
  • 搭建React项目,基于Vite+React+TS+ESLint+Prettier+Husky+Commitlint

    node: 20.10.0 安装包管理器pnpm 基于Vite创建项目 进入项目目录安装依赖 启动项目 1、初始化ESLint 按下图结果进行初始化选择: 按需选择完配置后,选择立即安装,就可一键安装相关依赖。安装成功后 ESLint 帮我们创建了 .eslintrc.cjs 配置文件(cjs 是指 CommonJS 格式)。 2、在项目

    2024年02月04日
    浏览(55)
  • vite vue3配置eslint和prettier以及sass

    教程 官网 vue-eslint ts-eslint 生成配置文件 安装其他插件 修改.eslintrc.cjs 添加.eslintignore 测试 也可以执行查看结果 官网 添加.prettierrc.cjs 添加.prettierignore https://stylelint.io/ 配置.stylelintrc.cjs 配置忽略文件.stylelintignore package.json增加配置 执行 yarn format 会自动格式化ts、js、html、js

    2024年01月23日
    浏览(36)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包