vscode中eslint自动格式化

本文详细介绍如何在VSCode中配置ESLint,实现自动格式化,并探讨了prettier和vetur的整合,确保代码一致性。包括设置详细步骤和.eslintrc.js配置,适用于前端开发者和团队协作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

vscode eslint自动格式化

setting:如下

{
    "editor.tabSize": 4,
    "eslint.autoFixOnSave": true, // 每次保存的时候将代码按eslint格式进行修复
    "prettier.eslintIntegration": true, //让prettier使用eslint的代码格式进行校验
    "prettier.semi": false, //去掉代码结尾的分号
    "prettier.singleQuote": true, //使用单引号替代双引号
    "javascript.format.insertSpaceBeforeFunctionParenthesis": true, //让函数(名)和后面的括号之间加个空格
    "vetur.format.defaultFormatter.html": "js-beautify-html", //格式化.vue中html
    "vetur.format.defaultFormatter.js": "vscode-typescript", //让vue中的js按编辑器自带的ts格式进行格式化
    "vetur.format.defaultFormatterOptions": {
    "js-beautify-html": {
    "wrap_attributes": "auto" //属性强制折行对齐
    }
    },
    "eslint.validate": [ //开启对.vue文件中错误的检查
    "javascript",
    "javascriptreact",
    {
    "language": "html",
    "autoFix": true
    },
    {
    "language": "vue",
    "autoFix": true
    }
    ],
    "search.exclude": {
    "**/node_modules": true,
    "**/bower_components": true,
    "**/dist": true
    },
    "window.title": "${dirty}${activeEditorMedium}${separator}${rootName}",
    "editor.codeActionsOnSave": {
        "source.fixAll.eslint": true
    },
    "window.zoomLevel": 1.4,
    "eslint.codeAction.disableRuleComment": {

    },
    "[vue]": {
        "editor.defaultFormatter": "octref.vetur"
    },
    "[html]": {
        "editor.defaultFormatter": "HookyQR.beautify"
    },
    "[javascript]": {
        "editor.defaultFormatter": "HookyQR.beautify"
    },
    "eslint.nodePath": "",
    "vetur.validation.interpolation": false,
    "diffEditor.ignoreTrimWhitespace": false,
    "editor.quickSuggestions": null,
    "editor.formatOnType":true,
    "editor.formatOnSave": true,
    "editor.fontSize": 14,
  //"eslint.enable": false
  }

.eslintrc.js:如下

module.exports = {
  root: true,
  env: {
    node: true
  },
  extends: [
    'plugin:vue/essential',
    '@vue/standard'
  ],
  parserOptions: {
    parser: 'babel-eslint'
  },
  rules: {
    'no-console': process.env.NODE_ENV === 'production' ? 'warn' : 'off',
    'no-debugger': process.env.NODE_ENV === 'production' ? 'warn' : 'off'
  },
  overrides: [
    {
      files: [
        '**/__tests__/*.{j,t}s?(x)',
        '**/tests/unit/**/*.spec.{j,t}s?(x)'
      ],
      env: {
        jest: true
      }
    }
  ]
}

### 配置 VSCode 使用 ESLint 进行保存时自动格式化 为了使 VSCode 在保存文件时通过 ESLint 自动格式化代码,需按照以下方式调整 `settings.json` 文件中的配置项。 确保已安装必要的扩展插件如 Vetur 和 ESLint 后,在工作区或用户级别的 `settings.json` 中加入如下设置: #### 设置编辑器行为 启用保存时的自动格式化功能[^1]: ```json { "editor.formatOnSave": true, } ``` 指定默认格式化工具有助于防止不同工具间的冲突,对于 Vue 项目而言可以这样设定: ```json { "editor.defaultFormatter": "octref.vetur", } ``` 针对 JavaScript 不采用 Vetur 而是交给 ESLint 来处理格式化的工作: ```json { "vetur.format.defaultFormatter.js": "none" } ``` #### 开启 ESLint 的保存操作修正 为了让 ESLint 在每次保存时执行所有的修复动作并显式声明此意图,应添加下列选项[^2]: ```json { "editor.codeActionsOnSave": { "source.fixAll.eslint": "explicit" } } ``` 如果仅希望触发特定类型的修复而不想影响其他方面,则可简化为只包含 `"source.fixAll"` 键值对的形式: ```json { "editor.codeActionsOnSave": { "source.fixAll": true } } ``` #### 扩展 ESLint 功能覆盖范围 当涉及到多语言支持或多目录结构的应用程序时,可以通过定义多个工作目录来增强 ESLint 的适用性[^3]: ```json { "eslint.workingDirectories": ["./back", "./front"] } ``` 同时也要确认验证的目标语言列表是否涵盖了当前项目的实际需求: ```json { "eslint.validate": [ "javascript", "vue", "html" ] } ``` 最后,激活 ESLint 并允许其随打字实时运行有助于即时反馈编码标准上的偏差[^4]: ```json { "eslint.enable": true, "eslint.run": "onType" } ``` 以上就是完整的配置过程,这些更改将帮助开发者更高效地维护一致性的代码风格。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值