我该怎么办:
在找到一个非常干净的解决方案之前,我为此苦苦挣扎了几个小时。它不依赖于 FlatCompat(这将使旧配置保持活动状态),因此我想将其记录在这里,以便其他面临同样挑战的人受益:
ESLint 平面配置与以前的格式有很大不同。一开始它让我抓狂,但一旦点击,它实际上会变得更简单,为了帮助理解“平面配置”,以下指针帮助了我:
.eslintignore
不再可用)VSCode 设置 - 在撰写本文时,您需要:
v3.0.5
或更高版本(目前需要“切换到预发布版本”)"eslint.useFlatConfig": true
添加到您的 settings.json
(这是以前的 eslint.experimental.useFlatConfig
)安装以下依赖项:
yarn add --dev \
eslint \
@eslint/js \
typescript-eslint \
--
使用以下
eslint.config.js
文件开始使用(将其放在 package.json
旁边)。这提供了来自 https://typescript-eslint.io/getting-started/ 的默认值。此配置还允许您添加忽略的文件,这很有用,因为 .eslintignore
不再可用。请注意,配置“只是 Javascript”,因此您可以进行其他更改。这使用 module.exports
避免了将 type: "module"
添加到 package.json
:
const eslint = require('@eslint/js');
const tseslint = require('typescript-eslint');
const ignores = [
'**/*.js',
];
module.exports = tseslint.config(
{
...eslint.configs.recommended,
ignores,
},
...tseslint.configs.recommended.map((config) => ({
...config,
ignores,
})),
);
专业人士:
缺点:
我希望这可以为您节省一些时间来了解如何进行转换。