【eslint】快速配置

安装

kotlin 复制代码
npm init @eslint/config@latest

经过上述操作会安装 eslint 必要的包以及生成 eslint.config.js 配置文件

插件

编辑器插件的作用是在编辑器里实时运行 ESLint 包来检查并自动修复代码

安装
复制代码
dbaeumer.vscode-eslint
配置
json 复制代码
// settings.json
{
  "editor.codeActionsOnSave": {
    "source.fixAll.eslint": "explicit",
  },
  "eslint.validate": ["javascript", "typescript", "vue"],
}

配置文件

配置文件采用扁平化配置,该配置方式是 eslint v9 的新配置系统

  • 扁平化配置采用数组形式,数组中的每个对象都是一个配置对象
    • 每个配置对象都包含一套完整的 eslint 规则、文件匹配模式和其他配置选项
  • 多配置对象间的规则合并
    • 遍历配置对象数组,根据 files 和 ignores 决定文件是否匹配该配置对象
      • 无 files 配置则匹配所有文件
    • 遍历结束,若存在多个配置对象,则后者的规则覆盖前者
js 复制代码
// eslint.config.js
import js from "@eslint/js";
import globals from "globals";
import tseslint from "typescript-eslint";
import pluginVue from "eslint-plugin-vue";
import { defineConfig } from "eslint/config";

export default defineConfig([
  {
    files: ["**/*.{js,mjs,cjs,ts,mts,cts,vue}"],
    plugins: { js },
    extends: ["js/recommended"],
    languageOptions: { globals: { ...globals.browser, ...globals.node } },
  },
  tseslint.configs.recommended,
  pluginVue.configs["flat/essential"],
  {
    files: ["**/*.vue"],
    languageOptions: { parserOptions: { parser: tseslint.parser } },
  }
]);

prettier

eslint 侧重于代码质量,prettier 侧重于代码风格检查,将 prettier 作为 eslint 的插件,通过 eslint 统一管理代码质量和格式

安装依赖
arduino 复制代码
pnpm add eslint-plugin-prettier eslint-config-prettier -D
  • eslint-config-prettier: 关闭 eslint 中有关代码格式化的配置
  • eslint-plugin-prettier: 把 prettier 配置成 eslint 的一个插件
修改 eslint 配置文件
js 复制代码
// eslint.config.js
...
import eslintConfigPrettier from "eslint-config-prettier";
import eslintPluginPrettier from "eslint-plugin-prettier/recommended";

export default defineConfig([
  ...
  eslintPluginPrettier,
  eslintConfigPrettier,
]);
相关推荐
User_芊芊君子4 分钟前
JiuwenSwarm 协同智能体落地金融投研全流程:SwarmFlow 工作流编排与人机交互面板实测(A2UI v0.8 Web 通道适配)
前端·金融·人机交互
程序员大阳40 分钟前
副队长CSS教程(37)–transition 过渡
前端·css·transition·过渡
ZoeLandia44 分钟前
TypeScript 01:类型注解与类型推断
前端·javascript·typescript
踩蚂蚁1 小时前
从“打开灯光”看 KWS 多关键词语音控制是怎么工作的
前端
ppiero1 小时前
AI 助手聊着聊着就失忆?先分清"上下文"和"记忆"(五步装长期记忆)
前端
打呵欠的猫1 小时前
用 AI 做性能分析:一行命令找出拖慢页面的 5 个组件,优化后首屏快了 40%
前端·性能优化·ai编程
用户5080070546281 小时前
芯飞云用了两个月,说说我的真实感受
前端
Amos_Web1 小时前
Rspack 源码解析(二十一):Cacheable 与 Storage 如何持久化编译结果
前端·rust·前端框架
青烟小生1 小时前
前端性能优化实战:从指标监控到极致体验
前端
deli0071 小时前
0.1 加 0.2 为什么不等于 0.3?IEEE 754 双精度逐位实测
前端