vscode中eslint插件不生效问题

case : 最近使用webpack打包js资源中使用到了VS Code中的eslint插件辅助eslint plugin对代码进行校验,在.eslintrc.js文件中以及webpack.config.js配置好后,
在控制台运行npx webpack可以读取到eslint plugin的检测结果

一、eslint插件读取项目中.eslintrc.js配置文件

1、 eslint插件却始终不生效,在代码里没有eslint插件该有的红色波浪线

查阅eslint插件官网,找到如下描述:

js 复制代码
eslint.enable: enable/disable ESLint for the workspace folder. Is enabled by default.
  1. 如图,查找配置项找到configFile,若有,则看配置读取文件是否正确,若不正确,直接删掉吧,

configFile如果不设置,ESLint 会在当前工作目录及其父目录中查找默认的配置文件

  1. 所以在vscode配置文件中设置eslint.enable: true,或者直接在配置setting.json文件中删除此配置 ,(因为有提示.enable配置将被弃用
二、 eslint插件读取.eslintignore文件失效(eslintignore文件不生效)
  1. 继续查阅文档
js 复制代码
eslint.workingDirectories - specifies how the working directories ESLint is using are computed. ESLint resolves configuration files (e.g. eslintrc, .eslintignore) relative to a working directory so it is important to configure this correctly. If executing ESLint in the terminal requires you to change the working directory in the terminal into a sub folder then it is usually necessary to tweak this setting. (see also ESLint class options#cwd). Please also keep in mind that the .eslintrc* file is resolved considering the parent directories whereas the .eslintignore file is only honored in the current working directory. The following values can be used:

[{ "mode": "location" }] (@since 2.0.0): instructs ESLint to uses the workspace folder location or the file location (if no workspace folder is open) as the working directory. This is the default and is the same strategy as used in older versions of the ESLint extension (1.9.x versions).
[{ "mode": "auto" }] (@since 2.0.0): instructs ESLint to infer a working directory based on the location of package.json, .eslintignore and .eslintrc* files. This might work in many cases but can lead to unexpected results as well.
string[]: an array of working directories to use. Consider the following directory layout:
root/
  client/
    .eslintrc.json
    client.js
  server/
    .eslintignore
    .eslintrc.json
    server.js
Then using the setting:
  "eslint.workingDirectories": [ "./client", "./server" ]
will validate files inside the server directory with the server directory as the current eslint working directory. Same for files in the client directory. The ESLint extension will also change the process's working directory to the provided directories. If this is not wanted a literal with the !cwd property can be used (e.g. { "directory": "./client", "!cwd": true }). This will use the client directory as the ESLint working directory but will not change the process`s working directory.
[{ "pattern": glob pattern }] (@since 2.0.0): Allows to specify a pattern to detect the working directory. This is basically a short cut for listing every directory. If you have a mono repository with all your projects being below a packages folder you can use { "pattern": "./packages/*/" } to make all these folders working directories.

翻译一下

eslint.workingDirectories 此配置其实就是设置eslint工作目录,所以我们在setting.json文件中配置工目录

js 复制代码
[{ "mode": "location" }] 默认的
[{ "mode": "auto" }] 指示ESLint根据包的位置推断工作目录。.eslintignore和.eslintrc*文件。这可能在许多情况下有效,但也可能导致意想不到的结果
[{ "pattern": glob pattern }]允许指定检测工作目录的模式。这基本上是列出每个目录的捷径。如果你有一个单一的存储库,所有的项目都在一个包文件夹下,你可以使用{"pattern": "./packages/*/"}将所有这些文件夹设置为工作目录。

很显然。默认的配置噶了,所以剩下下面两个推断指定

相关推荐
golang学习记21 分钟前
VS Code 2026年的正确的打开方式
vscode
BIBI20491 天前
Windows 下 Maven 安装与 VSCode 配置
java·windows·vscode·maven·环境搭建·安装教程
weixin_404679311 天前
godot + vscode ai开发
ide·vscode·编辑器·游戏引擎·godot
我一定会有钱1 天前
vscode system下载安装
ide·vscode·编辑器
2401_858286112 天前
VSCODE远程链接错误: 无法建立链接,过程试图写入的管道不存在的解决方法
ide·vscode·编辑器
像风一样自由20202 天前
加强版VScode结合remote-ssh远程连接服务器开发指南
服务器·vscode·ssh
先吃饱再说2 天前
代码写得好不好,谁说了算?ESLint 如何让团队代码风格“自动统一”
代码规范·eslint
一朵好运莲2 天前
Turbo Console Log插件VSCode更改log快捷键教程
ide·vscode·编辑器
Darling噜啦啦2 天前
别再写"烂代码"了!ESLint v10 完整实战,用 Flat Config 治好团队的代码洁癖
eslint
烬羽2 天前
ESLint 10 把 .eslintrc 删了:flat config 到底怎么配,我帮你踩完了
代码规范·eslint·前端工程化