You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在ESLint defineConfig API中使用Prettier推荐规则并配置目录规则与忽略项

如何在ESLint defineConfig API中使用Prettier推荐规则并配置目录规则与忽略项

嘿,我看你已经在折腾ESLint和Prettier的组合配置了,刚好碰到的是目录规则和忽略项的问题,我帮你把配置补全并理清楚逻辑,保证完全贴合你的需求——给folderA、folderB应用规则,彻底跳过folderC。

首先先确认下你的目录结构:

root
|- folderA
|- folderB
|- folderC

你之前用defineConfig数组形式拆分配置的思路是对的,不过有几个小细节需要调整:比如ESLint里指定忽略项要用官方的ignorePatterns字段而非ignore,还有你代码里的引号没闭合。下面是补全后的完整配置:

// 若使用ES模块格式的配置文件(.eslintrc.mjs)
import { defineConfig } from 'eslint-define-config';
import eslintPluginPrettierRecommended from 'eslint-plugin-prettier/recommended';

export default defineConfig([
  // 第一组:指定目标文件与忽略目录
  {
    // 仅对folderA和folderB下的.vue、.ts文件生效
    files: ["folderA/**/*.{vue,ts}", "folderB/**/*.{vue,ts}"],
    // 彻底忽略folderC下的所有文件与子目录
    ignorePatterns: ["folderC/**/*"],
  },
  // 第二组:应用Prettier推荐规则
  eslintPluginPrettierRecommended,
  // 可选:给特定文件夹添加额外规则(比如仅给folderA加特殊规则)
  // {
  //   files: ["folderA/**/*.vue"],
  //   rules: {
  //     // 示例:将未使用变量的提示设为警告
  //     "vue/no-unused-vars": "warn"
  //   }
  // }
]);

如果你的配置文件是CommonJS格式(.eslintrc.cjs/.eslintrc.js),把导入方式改成CommonJS风格即可:

const { defineConfig } = require('eslint-define-config');
const eslintPluginPrettierRecommended = require('eslint-plugin-prettier/recommended');

module.exports = defineConfig([
  // 配置内容和上面一致
]);

再给你拆解下每个部分的作用:

  • files字段:精准锁定ESLint的扫描范围,避免它浪费资源处理无关文件,这里明确只针对folderA和folderB的Vue、TypeScript文件。
  • ignorePatterns字段:ESLint官方指定忽略项的字段,folderC/**/*能确保忽略整个folderC文件夹下的所有内容,你只写folderC也能生效,但加通配符会更明确直观。
  • eslintPluginPrettierRecommended:这个规则集已经帮你做好了Prettier和ESLint的兼容工作——它会启用eslint-plugin-prettier,把Prettier的格式问题转换成ESLint错误提示,同时自动关闭所有和Prettier冲突的ESLint内置规则,不用你手动逐个调整。

最后再提几个实用注意点:

  • 确保你已经安装了必要的依赖:eslint、eslint-plugin-prettier、prettier,如果用了eslint-define-config也要记得安装它。
  • 数组里的配置块是按顺序合并的,后面的配置会覆盖前面的冲突规则,所以如果要给特定文件夹加额外规则,记得把对应的配置块放在后面。

内容来源于stack exchange

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.08 13:14:49