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

VSCode 如何使用 eslint

第一步,打开VSCdoe,在拓展中搜索eslint插件,并安装。

第二步,在工作区文件夹中安装eslint  npm install eslint 或者 全局安装 npm install -g eslint

 第三步,在所在工作区的根目录下创建. eslintrc.json 文件, 或者 在终端使用npx-ESLint-init运行ESLint命令。

 第四步,在VSCode配置eslint设置选项

{
    // 默认onType类型
    "eslint.run": "onType",
    // 这个设置代表哪些文件允许ESLint规则
    "eslint.options": {
        "extensions": [
            ".js",
            ".vue",
            ".jsx",
            ".tsx"
        ]
    },
    // 这个设置允许你在保存文件时自动修复所有可用的 ESLint 规则问题
    "editor.codeActionsOnSave": {
        "source.fixAll.eslint": "explicit"
    },
}

更多设置项可在扩展中点击eslint查看

以下是.eslintrc.json 个人配置分享

{
  "env": {
    "browser": true,
    "commonjs": true,
    "es6": true,
    "node": true
  },
  "extends": [
    "plugin:vue/recommended",
    // "standard-with-typescript",
    "eslint:recommended"
  ],
  "overrides": [
  ],
  "parserOptions": {
    "ecmaVersion": "latest",
    "sourceType": "module"
  },
  "globals": {
    "globalConfig": "readonly",
    "$i18nConfig": "readonly",
    "$extend": "readonly",
    "moment": "readonly",
    "AMap":"readonly"
  },
  "rules": {
    "indent":[2,4,{ "SwitchCase": 1 }],//强制使用一致的缩进
    "key-spacing": [2,{"beforeColon": false,"afterColon": true}],// 强制在对象字面量的属性中键和值之间使用一致的间距
    "space-before-function-paren": [2, "always"], // 强制在函数名和左括号之间添加一个空格
    "space-before-blocks": [1, "always"],	// 强制在控制语句(如 if, for, while 等)的左花括号前添加一个空格						
    "no-extra-parens": 1,// 禁止不必要的括号
    "comma-spacing": ["error", { "before": false, "after": true }],
    "space-infix-ops": ["error", {"int32Hint": false}],// 
    "no-extra-semi": 2,	// 禁止不必要的分号
    "no-useless-escape": 1,	// 禁止不必要的转义字符
    "quotes": 1, 	// 强制使用一致的反勾号、双引号或单引号
    "semi-spacing": 0,	// 分号后面和前面是否应该有空格
    "object-curly-spacing": 0,	// 强制在花括号中使用一致的空格
    "no-var": 0,//要求使用 let 或 const 而不是 var
    "strict": 0,//是否禁止严格模式
    "prefer-const": 0,//要求使用 const 声明那些声明后不再被修改的变量
    "camelcase": 0,//强制使用骆驼拼写法命名约定
    "func-names": 0,//要求或禁止使用命名的 function 表达式
    "no-console": 0,//禁用 console
    "no-redeclare": 0,//禁止重新声明变量
    "no-sparse-arrays":2,//禁用稀疏数组
    "valid-jsdoc":0,// 强制使用有效的 JSDoc 注释
    "eqeqeq":2,//要求使用 === 和 !==
    "no-fallthrough":2,//禁止 case 语句落空
    "no-unused-vars":1,//禁止出现未使用过的变量
    "no-use-before-define":0, //禁止在变量定义之前使用它们.
    "no-tabs":0, //禁用 tab
    "arrow-body-style":1,//要求箭头函数体使用大括号
    "arrow-parens":1,//要求箭头函数的参数使用圆括号
    "no-const-assign":2,//禁止修改 const 声明的变量
    "no-duplicate-imports":2,//禁止重复模块导入
    "no-underscore-dangle":0, //禁止标识符中有悬空下划线
    "guard-for-in":0, //需要约束 for-in
    "no-restricted-syntax":0, //禁止使用特定的语法
    "no-continue":0, //禁用 continue 语句
    "max-len":0, //强制行的最大长度
    "no-plusplus":0, //禁止使用一元操作符 ++ 和 --
    "no-param-reassign":0, //禁止对函数参数再赋值
    "class-methods-use-this":0, //强制类方法使用 this
    "no-unused-expressions":1, //禁止未使用过的表达式
    "no-bitwise":0, //禁止使用按位操作符
    "prefer-destructuring":0, //优先使用数组和对象解构
    "new-cap":0, //要求构造函数首字母大写
    "no-multi-assign":0, //禁止连续赋值
    "radix":0, //强制在parseInt()使用基数参数
    "import/order":0, //import顺序有误
    "import/no-extraneous-dependencies": 0, //禁止用外部依赖
    "no-shadow":1, //禁止变量声明与外层作用域的变量同名
    "no-restricted-properties": 0, //禁止使用对象的某些属性
    "linebreak-style":0, //强制一直的换行风格
    "no-lonely-if":0, //禁止 if 作为唯一的语句出现在 else 语句中
    "one-var":0, //强制函数中的变量要么一起声明要么分开声明
    "one-var-declaration-per-line":0, //要求或禁止在变量声明周围换行
    "global-require":0, //禁止模块内部使用require增加开销
    "no-mixed-operators":0, //禁止混合使用不同的操作符
    "no-nested-ternary":0 //禁用嵌套的三元表达式
  }
}


http://www.kler.cn/a/542922.html

相关文章:

  • MyBatis的工作流程是怎样的?
  • leetcode day17 二分查找 34+367 移除元素27
  • WPS中如何批量上下居中对齐word表格中的所有文字
  • zsh: command not found: conda
  • 基于改进型灰狼优化算法(GWO)的无人机路径规划
  • pytest测试专题 - 1.2 如何获得美观的测试报告
  • 基于 GEE 利用插值方法填补缺失影像
  • SMU Winter 2025 div1 2nd
  • PDF 文件的安全功能概述
  • Unity做2D小游戏4------让角色动起来
  • RDKit 给3D信息缺失的sdf生成三维结构
  • 黑马Redis详细笔记(实战篇---短信登录)
  • 电脑出现蓝屏英文怎么办?查看修复过程
  • 【物联网】电子电路基础知识
  • RocketMQ、RabbitMQ、Kafka 的底层实现、功能异同、应用场景及技术选型分析
  • 华为openEuler部署docker
  • CCFCSP第34次认证第一题——矩阵重塑(其一)
  • DeepSeek应用——与word的配套使用
  • 活动预告 | 解锁 Excel 新境界 —— AI 技术赋能下的数据分析超级引擎!
  • 【C++高并发服务器WebServer】-17:阻塞/非阻塞和同步/异步、五种IO模型、Web服务器
  • 【Windows/C++/yolo开发部署04】使用CLI 和 python进行推理
  • 理解UML中的四种关系:依赖、关联、泛化和实现
  • 美团智能外呼机器人意图训练全流程
  • docker发布自己的镜像
  • VSCode Cline 插件快速接入 DeepSeek API,提升本地深度学习效率
  • 讲解一下SpringBoot的RPC连接