Eslint 8.0.1 - 在配置中实现 jest 会引发错误

dsu*_*udo 1 javascript config typescript eslint

在我的 Next/React/Typescript/Jest 项目中,我尝试配置我的 eslint 配置。\n更新到版本 8.x(当前为 8.0.1)后,linter 抛出以下错误:

\n
Error: .eslintrc.js \xc2\xbb ./eslint/config.js:\n    Environment key "jest/globals" is unknown\n
Run Code Online (Sandbox Code Playgroud)\n

然后我添加'plugin:jest/recommended'extendsmy 中的数组config.js,这导致我出现此错误:

\n
TypeError: Failed to load plugin 'jest' declared in '.eslintrc.js \xc2\xbb ./eslint/config.js': Class extends value undefined is not a constructor or null\n
Run Code Online (Sandbox Code Playgroud)\n

该插件已安装并位于我的package.json. 甚至有几个也npm ci没有帮助我。

\n

将不胜感激!

\n

小智 9

你还使用其他 eslint 插件吗?如果是这样,npm 是否警告过您任何对等依赖问题?

升级到 eslint v8.0.1 时我遇到了同样的问题。在可能的情况下,我将一个插件的早期版本列为@typescript-eslint/eslint-plugin直接依赖项(@typescript-eslint/eslint-plugin也是 的对等依赖项eslint-plugin-jest)。此早期版本@typescript-eslint/eslint-plugin与 v8.0.1 不兼容eslint。所以我选择降级到v7.32.0

如果您可以控制您使用的其他插件,您可以升级它们的依赖项并发布新版本。否则,您可能必须降级eslint您的项目。

  • 谢谢你的提示!幸运的是,我可以控制所有对等依赖关系。但就我而言,eslint 需要最新版本的 `eslint-plugin-jest` (25.2.2) 和几天前发布的 `eslint-plugin-testing-library` v5。 (3认同)