@eslint/migrate-config

中文文档
3.0.4发布于 2026/11/14Apache-2.0ES Module构建来源已验证近 30 天下载 6.7万

ESLint 配置迁移

中文使用文档
文档目录15 节
  1. 概览
  2. 限制
  3. 使用量
  4. 常见JS 输出
  5. 包括a .gitignore 文件
  6. 针对特定ESLint版本
  7. 后续步骤
  8. 升级插件和双检查兼容性
  9. --ext
  10. 许可证
  11. 发起人
  12. 黄金赞助商
  13. 白银赞助商
  14. 青铜赞助商
  15. 技术赞助商

ESLint 配置迁移

概览

此软件包辅助了遗留的 ESLint 配置文件格式的迁移(.eslintrc.)到新的ESLint配置文件格式(eslint.config.js) (中文(简体) ).

说明: 生成的配置文件并不保证在所有情况下都能工作,但它应该比手动试图迁移更接近工作配置文件.

限制

此工具目前对以下配置文件格式很有效 :

  • .eslintrc
  • .eslintrc.json
  • .eslintrc.yml

如果您正在使用 JavaScript 配置文件(.eslintrc.js, (中文(简体) ), .eslintrc.cjs, (中文(简体) ), .eslintrc.mjs该工具目前只能迁移 评价 配置 。 这意味着你可能掌握的文件里的任何逻辑都会丢失. 如果您的配置文件大多是静态的,那么会得到一个好的结果;如果您的配置文件比较复杂(使用函数,计算路径等),那么这个工具不会提供等同的配置文件.

使用量

您可以在命令行上运行此软件包, 而无需先使用 npx 或类似工具:

npx @eslint/migrate-config .eslintrc.json
# or
bunx @eslint/migrate-config .eslintrc.json

工具会自动找到您的 .eslintignore 中的文件并移动到您的新配置文件中.

如果您在运行时收到 npm 错误 npx,首先手动安装软件包:

npm i @eslint/migrate-config
npx @eslint/migrate-config .eslintrc.json

常见JS 输出

默认情况下,此工具生成一个ESM文件(.mjs 扩展)。 如果您想生成一个普通JS文件, 请通过 --commonjs 旗帜 :

npx @eslint/migrate-config .eslintrc.json --commonjs
# or
bunx @eslint/migrate-config .eslintrc.json --commonjs

包括a .gitignore 文件

如果您正在使用 --ignore-path .gitignore 在CLI上,你需要阅读 .gitignore 文件输入您的配置文件。 迁移可以帮你处理这个 通过传递 --gitignore 旗帜 :

npx @eslint/migrate-config .eslintrc.json --gitignore
# or
bunx @eslint/migrate-config .eslintrc.json --gitignore

针对特定ESLint版本

默认情况下,这个工具针对的是最新的ESLint可用版本(v10). 您可以通过通过 --target-version 选项 :

npx @eslint/migrate-config .eslintrc.json --target-version 9
# or
bunx @eslint/migrate-config .eslintrc.json --target-version 9

后续步骤

完成迁移后,可能需要手动修改产生的配置文件.

升级插件和双检查兼容性

对于配置文件中使用的任何插件,请确保升级到最新版本。 许多插件正在创建它们的 v9 兼容版本,而这个工具可能已经过时,与之相关的插件完全支持 v9.

升级后, 重复检查插件是否还需要任何作为迁移的一部分而自动生成的兼容工具 .

--ext

使用时 --ext 在命令行上,例如:

npx eslint --ext .ts .

你需要去除这个 --ext 从命令行中添加一个等效对象到您的配置文件。 譬如说, --ext .ts 在配置文件中需要这样的对象 :

export default [
    {
        files: ["**/*.ts"],
    },

    // the rest of your config
];

它告诉 ESLint 要搜索结束于 .ts 当命令行上传递目录时。 如果您愿意, 您可以选择在此对象上添加额外的属性, 但不需要 .

许可证

Apache 2.0 (英语)

发起人

以下公司,组织,个人支持ESLint的持续维护与发展. 成为发起人 让你的标志在我们的读取器和 网站。 。 。 .

黄金赞助商

Vite Ecosystem Fund ForceIndexer Qlty Software Shopify CodeRabbit Automattic

白银赞助商

Vite Liftoff StackBlitz

青铜赞助商

Cybozu SAP Discord GitBook Citadel AI TestMu AI Open Source Office (Formerly LambdaTest)

技术赞助商

技术赞助者允许我们免费利用其产品和服务,作为对开放源生态系统和我们工作的贡献的一部分.

Netlify Algolia 1Password

版本与发布记录

@eslint/migrate-config 共发布 38 个版本,首次发布于 2024/05/31;过去 12 个月发布了 14 个版本。最新版本附带 npm provenance 构建来源证明,可追溯到公开的 CI 构建记录。

版本发布日期距今
3.0.4latest2026/11/14今天
3.0.32026/09/042 个月前
3.0.22026/07/213 个月前
3.0.12026/07/153 个月前
3.0.02026/06/224 个月前
2.1.02026/05/086 个月前

关于 @eslint/migrate-config 的常见问题

@eslint/migrate-config 是什么?

ESLint 配置迁移

如何安装 @eslint/migrate-config?

在项目目录运行 npm install @eslint/migrate-config,或使用 pnpm add / yarn add / bun add。它还提供命令行工具 eslint-migrate-config,可以用 npx eslint-migrate-config 直接运行。

@eslint/migrate-config 支持 TypeScript 吗?

该包的 package.json 没有声明类型入口。需要类型提示时,可以在 npm 上查找社区维护的 @types/eslint__migrate-config 是否存在。

@eslint/migrate-config 支持 ESM 还是 CommonJS?

以 ES Module 形式发布,推荐使用 import 引入。在 CommonJS 项目中,Node.js 20.19+ / 22.12+ 可以直接 require() 不含顶层 await 的 ES Module,更早的版本需要改用动态 import()。

@eslint/migrate-config 需要什么版本的 Node.js?

package.json 的 engines 字段要求 Node.js ^20.19.0 || ^22.13.0 || >=24。版本不符时 npm 默认只给出警告,开启 engine-strict 后会拒绝安装。

@eslint/migrate-config 可以商用吗?

@eslint/migrate-config 使用 Apache-2.0 许可。宽松许可:允许商业使用、修改和再分发,并附带明确的专利授权;分发时需保留许可与 NOTICE 文件,修改过的文件要注明改动。以上为概括,不构成法律意见,请以许可原文为准。

@eslint/migrate-config 的下载量有多少?

根据 npm 官方下载统计,@eslint/migrate-config 在 2026/10/14 – 2026/11/12 这 30 天内被下载 67,299 次,日均约 2,243 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@eslint/migrate-config 还在维护吗?

最新版本 3.0.4 发布于 2026/11/14(今天);至今共发布 38 个版本,其中过去 12 个月发布了 14 个;首次发布于 2024/05/31。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。