错误:.eslintrc.js中的ESLint配置无效:-意外的顶级属性“files”。
错误:.eslintrc.js中的ESLint配置无效:-意外的顶级属性“files”。
我想在我的eslintrc.js中指定要lint的文件,所以我添加了files: ...
module.exports = { extends: [ 'react-app', 'react-app/jest', 'eslint:recommended', 'plugin:@typescript-eslint/recommended', 'prettier', ], files: ['*.ts', '*.jsx', '*.ts', '*.tsx'], parser: '@typescript-eslint/parser', parserOptions: { project: './tsconfig.json', ecmaFeatures: { jsx: true, }, ecmaVersion: 'latest', sourceType: 'module', }, rules: { 'testing-library/no-node-access': 'off', }, };
但是当我的precommit运行时,出现以下错误:
precommit: BABEL_ENV=development eslint src --ext .js,.jsx,.ts,.tsx --fix'*.ts', '*.tsx' 错误:.eslintrc.js中的ESLint配置无效: - 未预料到的顶级属性"files"。
问题原因:出现该错误的原因是因为在.eslintrc.js文件中出现了一个不被识别的顶级属性"files"。
解决方法:在.eslintrc.js文件中,只有在希望指定覆盖的文件时才应在嵌套的"overrides"块内使用"files"属性。可以参考官方文档中的说明:https://eslint.org/docs/latest/user-guide/configuring/configuration-files#how-do-overrides-work。
有趣的是,我添加"files"属性的原因是因为在这个帖子的最佳答案中,解决了我最初的eslint解析错误。但将其包裹在"overrides"块内并不能解决上述错误。