Tengo un problema intermitente con ESLint en VS Code. Al guardar un archivo, en lugar de formatearlo, aparece este mensaje en la barra de estado:
Aparentemente nadie nunca ha reportado este mensaje en Google.
Cuando digo que es intermitente, estaba funcionando bien, luego la computadora (MBP) se bloqueó y, al reiniciar, esta es la situación. Ha sucedido anteriormente, pero no recuerdo lo que hice para solucionarlo.
La aplicación es una aplicación basada en Vue bastante compleja basada en una plantilla preconfigurada. En paquete.json:
"@vue/cli-plugin-eslint": "^4.5.13", "babel-eslint": "^10.1.0", "eslint": "^7.31.0", "eslint-plugin-import": "^2.23.4", "eslint-plugin-vue": "^7.14.0",En el archivo del espacio de trabajo de VS Code:
"editor.codeLens": true, "eslint.format.enable": true, "editor.codeActionsOnSave": { "source.fixAll.eslint": true, }, "[javascript]": { "editor.defaultFormatter": "dbaeumer.vscode-eslint" }, "[vue]": { "editor.defaultFormatter": "dbaeumer.vscode-eslint" }, "eslint.validate": [ "javascript" ], "debug.javascript.usePreview": true, "debug.javascript.usePreviewAutoAttach": true, "[jsonc]": { "editor.defaultFormatter": "dbaeumer.vscode-eslint" },Realmente no estoy seguro de cómo proceder para entender por qué vscode-eslint informa que no puede formatear archivos JavaScript.
EDITAR
Este problema relacionado con TypeScript da algunas pistas. Parece que este error puede ocurrir cuando el servidor ESLint se está reiniciando o el host de la extensión está bajo mucha presión.
En mi proyecto ahora, la mayoría de los archivos están formateados bien, aunque uno falla constantemente. Ese archivo se llama eslint.js y es parte de un proceso de compilación, ejecutando eslint; no entiendo totalmente la configuración. Sospecho que guardar este archivo de alguna manera hace que se ejecute/recargue eslint, y mientras eso sucede, eslint-vscode también intenta ejecutarlo y falla.
De hecho, estaba experimentando el mismo problema y solo necesitaba eliminar el archivo .eslintignore , que solo contenía esta línea:
.eslintrc.jsSimplemente podría comentar esa línea también.
Espero que ayude :)
Para mí, parecía como si StandardJS estuviera tratando de borrar todo en mi carpeta node_modules . El error desapareció y linting comenzó a funcionar nuevamente después de agregar una propiedad standard.ignore a mi package.json , seguido de recargar VSCode:
{ "name": "foo", "devDependencies": { "standard": "^16.0.4" }, "dependencies": { // stuff... }, "standard": { "ignore": [ "**/node_modules/**" ] } }No tengo idea de por qué este comportamiento no sucedió automáticamente...
ACTUALIZACIÓN: anteriormente había instalado eslint junto con standard , lo que puede haber sido la causa raíz. Mi comando de instalación original era npm install standard eslint , que instalaba la última versión de eslint , v8.xx. Sin embargo, standard (en el momento de escribir este artículo) depende de eslint v7.xx, lo que provoca un conflicto.
La solución:
~$ npm uninstall eslint # remove eslint from package.json ~$ rm -rf node_modules # remove node_modules ~$ npm install # get fresh installation