我有一个新安装的NextJS应用程序与TypeScript。我使用的是Next V12,当我运行yarn lint时,它运行next lint并没有显示错误。

现在,当我在.eslintrc文件中添加一个额外的规则,比如"no-unused-vars": 2 (它意味着当有一个未使用的变量时显示一个错误),并且故意在"no-unused-vars": 2文件夹中的index.tsx文件中添加一个未使用的变量,这样我就可以测试linting了,它可以正常工作。

但是,当我添加另一个名为hooks的文件夹并在其中添加一个包含未使用变量的index.tsx文件时,它不会捕获钩子文件夹中未使用的变量错误,只捕获pages文件夹中的未使用变量错误。
我的.eslintrc文件是这样的-
{
"extends": "next/core-web-vitals",
"rules": {
"no-unused-vars": 2
}
}如果有人以前遇到过这个问题,并且知道我做错了什么,请提出建议。
发布于 2022-02-27 10:49:07
根据文档,next lint对以下文件夹中的文件运行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"或在lint中更改package.json脚本
{
...
"scripts": {
...
"lint": "next lint --dir ." //or "next lint --dir pages hooks"
...
}
...
}请注意,以上是用于开发模式。
对于生产模式,可以将dirs选项添加到next.config.js中的eslint中
module.exports = {
eslint: {
dirs: ['.'] //or ['pages', 'hooks']
}
}https://stackoverflow.com/questions/71279794
复制相似问题