当前位置: 首页 > news >正文

vue中配置Eslint的步骤

1. 安装ESLint相关依赖

# 安装ESLint核心包
npm install --save-dev eslint# 安装Vue相关插件
npm install --save-dev eslint-plugin-vue vue-eslint-parser# 安装JavaScript推荐配置
npm install --save-dev @eslint/js globals# 安装Prettier相关(用于代码格式化)
npm install --save-dev prettier eslint-plugin-prettier

2. 创建ESLint配置文件

import globals from 'globals';
import pluginJs from '@eslint/js';
import pluginVue from 'eslint-plugin-vue';
import vueParser from 'vue-eslint-parser';
import prettier from 'eslint-plugin-prettier';export default [// 全局忽略配置{ignores: ['**/*.config.js','dist/**','node_modules/**','!**/eslint.config.js',],},// JavaScript文件配置{files: ['**/*.js', '**/*.mjs'],//针对.js和.mjs文件languageOptions: {globals: globals.browser,ecmaVersion: 'latest',sourceType: 'module',},plugins: {prettier,},rules: {'prettier/prettier': 'error','no-var': 'error',// 禁止使用var'no-multiple-empty-lines': ['warn', { max: 1 }],//最多允许1个空行'no-console': 'warn',//禁止使用console'no-debugger': 'warn',//禁止使用debugger'no-unexpected-multiline': 'error',//防止意外的多行语句'no-useless-escape': 'off',//关闭对不必要转义字符的检查'no-unused-vars': 'error',//禁止未使用的变量},},// Vue文件配置{files: ['**/*.vue'],languageOptions: {globals: globals.browser,parser: vueParser,parserOptions: {ecmaVersion: 'latest',sourceType: 'module',ecmaFeatures: {jsx: true,},},},plugins: {prettier,vue: pluginVue,},rules: {'prettier/prettier': 'error','no-var': 'error','no-multiple-empty-lines': ['warn', { max: 1 }],'no-console': 'warn','no-debugger': 'warn','no-unexpected-multiline': 'error','no-useless-escape': 'off','no-unused-vars': 'error',// Vue特定规则'vue/multi-word-component-names': 'off',//关闭组件名必须时多词的要求'vue/script-setup-uses-vars': 'error',//确保<script setup>中变量被正确使用'vue/no-mutating-props': 'off','vue/attribute-hyphenation': 'off','vue/valid-v-slot': ['error',{allowModifiers: true,},],},},// 推荐配置pluginJs.configs.recommended,//将使用区推荐的有关JavaScript的ESLint规则...pluginVue.configs['flat/essential'],// 使用Vue.js的基本ESLint规则
];

3. 配置package.json脚本

{"scripts": {"lint": "eslint . --fix","lint:check": "eslint .","format": "prettier --write ."}
}

4. 创建prettier配置文件

对代码进行格式化配置

{"semi": true,// 在每个语句的末尾添加分号"singleQuote": true,// 使用单引号"tabWidth": 2,// 设置缩进的空格数为2"useTabs": false,// 使用空格缩进"printWidth": 100,//每行的最大字符数为100"trailingComma": "all"//在多行结构的最后一个元素后添加逗号
}

5. 运行后检查

# 检查代码
npm run lint:check# 检查并自动修复
npm run lint# 格式化代码
npm run format
http://www.dtcms.com/a/278652.html

相关文章:

  • 【世纪龙科技】汽车整车检测与诊断仿真实训系统-迈腾B8
  • Redis随笔
  • 算法学习笔记:21.动态规划——从原理到实战,涵盖 LeetCode 与考研 408 例题
  • Qt小组件 - 2(布局)瀑布流布局,GridLayout,FlowLayout
  • QT跨平台应用程序开发框架(7)—— 常用输入类控件
  • [Dify] -基础入门10- Dify 应用开发与 ChatGPT 的区别与优势分析
  • Sharding-Sphere学习专题(四)广播表和绑定表、分片审计
  • 【王树森推荐系统】物品冷启05:流量调控
  • ether.js—6—contractFactory以部署ERC20代币标准为例子
  • 设备树知识点
  • OneCode3.0 MCPServer:注解驱动的AI原生服务架构与实践
  • Python量化交易一体化解决方案
  • GStreamer 详解
  • JavaScript学习第九章-第三部分(内建对象)
  • 注解(Annotation)
  • 数据分类分级和重要数据标准解读
  • iOS —— 网易云仿写
  • 微信小程序——配置路径别名和省略后缀
  • iOS App 安全加固全流程:静态 + 动态混淆对抗逆向攻击实录
  • iOS如何查看电池容量?理解系统限制与开发者级能耗调试方法
  • 纯C++11实现!零依赖贝叶斯情感分析系统,掌握机器学习系统工程化的秘密!
  • Android Studio C++/JNI/Kotlin 示例 三
  • 基于51单片机的贪吃蛇游戏Protues仿真设计
  • 图算法在前端的复杂交互
  • 网络编程(套接字)
  • AI数据分析仪设计原理图:RapidIO信号接入 平板AI数据分析仪
  • RPC vs RESTful架构选择背后的技术博弈
  • 从数据洞察到设计创新:UI前端如何利用数字孪生提升产品交互体验?
  • 数字孪生技术引领UI前端设计新潮流:智能交互界面的个性化定制
  • 【Linux网络编程】应用层自定义协议与序列化