Next lint 无法处理 pages 文件夹以外的任何文件
Next lint not working on files anywhere other than the ones inside the pages folder
我有一个全新安装的带有 TypeScript 的 NextJS 应用程序。我正在使用 Next V12,当我 运行 yarn lint
时,它 运行s next lint
并且没有显示任何错误。
现在,当我在 .eslintrc
文件中添加一个额外的规则时,例如 "no-unused-vars": 2
(这意味着当有未使用的变量时显示错误),并添加一个未使用的变量故意在 pages
文件夹内的 index.tsx
文件中,以便我可以测试 linting,它按预期工作。
但是当我添加另一个名为 hooks
的文件夹并添加一个包含未使用变量的 index.tsx
文件时,它不会捕获 hooks 文件夹中的未使用变量错误,只会捕获其中的变量pages
个文件夹。
我的 .eslintrc
文件看起来像这样 -
{
"extends": "next/core-web-vitals",
"rules": {
"no-unused-vars": 2
}
}
如果有人以前遇到过这个问题并且知道我做错了什么,请提出建议。
根据 docs、next lint
运行s ESLint,以下文件夹中的文件:pages
、components
和 lib
.
对于其他文件夹的 运行 ESLint,你必须使用 --dir
标志。
您可以直接在终端中这样做:
yarn run lint -- --dir . //for all folders in your project root directory
yarn run lint -- --dir pages hooks //only for the folders "pages" and "hooks"
或更改package.json
中的lint
脚本:
{
...
"scripts": {
...
"lint": "next lint --dir ." //or "next lint --dir pages hooks"
...
}
...
}
注意以上为开发模式
对于production mode,您可以在next.config.js
中的eslint
中添加dirs
选项:
module.exports = {
eslint: {
dirs: ['.'] //or ['pages', 'hooks']
}
}
我有一个全新安装的带有 TypeScript 的 NextJS 应用程序。我正在使用 Next V12,当我 运行 yarn lint
时,它 运行s next lint
并且没有显示任何错误。
现在,当我在 .eslintrc
文件中添加一个额外的规则时,例如 "no-unused-vars": 2
(这意味着当有未使用的变量时显示错误),并添加一个未使用的变量故意在 pages
文件夹内的 index.tsx
文件中,以便我可以测试 linting,它按预期工作。
但是当我添加另一个名为 hooks
的文件夹并添加一个包含未使用变量的 index.tsx
文件时,它不会捕获 hooks 文件夹中的未使用变量错误,只会捕获其中的变量pages
个文件夹。
我的 .eslintrc
文件看起来像这样 -
{
"extends": "next/core-web-vitals",
"rules": {
"no-unused-vars": 2
}
}
如果有人以前遇到过这个问题并且知道我做错了什么,请提出建议。
根据 docs、next lint
运行s ESLint,以下文件夹中的文件:pages
、components
和 lib
.
对于其他文件夹的 运行 ESLint,你必须使用 --dir
标志。
您可以直接在终端中这样做:
yarn run lint -- --dir . //for all folders in your project root directory
yarn run lint -- --dir pages hooks //only for the folders "pages" and "hooks"
或更改package.json
中的lint
脚本:
{
...
"scripts": {
...
"lint": "next lint --dir ." //or "next lint --dir pages hooks"
...
}
...
}
注意以上为开发模式
对于production mode,您可以在next.config.js
中的eslint
中添加dirs
选项:
module.exports = {
eslint: {
dirs: ['.'] //or ['pages', 'hooks']
}
}