我正在尝试在
eslint
项目中实现 Next.js
。文件结构如下所示
.eslintignore
.eslintrc.js
.next
.prettierrc
.stylelintrc.js
components
forms
modals
modules
node_modules
我的
node_modules/*
文件中有 .eslintignore
。当我尝试通过 eslint --fix /sources/**/*.js
来清理这些时,我遇到了以下错误
You are linting "/sources/node_modules/ally.js", but all of the files matching the glob pattern "/sources/node_modules/ally.js" are ignored.
谁能帮我解决这个问题?谢谢
问题可能来自您的命令行。
如果您忘记了单引号,您的终端将评估 glob (
**/*
),而不是 eslint
。所以这将跳过所有 eslint 忽略设置。
如果您使用
eslint
启用 --debug
的调试日志,您将看到它的运行情况:
$ eslint **/*.ts --debug 2>&1 | grep "CLI args"
eslint:cli CLI args: [ 'a.ts', 'b.ts', 'node_modules/package/a.ts', 'node_modules/package/b.ts', '--debug' ]
$ eslint '**/*.ts' --debug 2>&1 | grep "CLI args"
eslint:cli CLI args: [ '**/*.ts', '--debug' ]
如果
.eslintignore
与 node_modules
位于同一目录中,您可以将其指定为 node_modules
。
# .eslintignore
node_modules
**/.next/**
**/_next/**
**/dist/**
.eslintignore
遵循 .gitignore
语法。
有关更多详细信息,请参阅 .gitignore 规范。
Linter 在不同的节点版本中工作方式不同。
在这种情况下,将节点从
v14.x
更新为 v16.x
对我有用。
如果
.eslintignore
配置不适合您,请考虑检查您的节点版本。