Posterior a de esta prolongada compilación de datos dimos con la respuesta esta traba que pueden tener muchos los usuarios. Te brindamos la respuesta y deseamos serte de gran ayuda.
Solución:
Está un poco oculto en la documentación, pero si agrega algunas cosas a la propiedad ‘extiende’, puede usar las reglas recomendadas por ESLint como no-unused-vars, y hacer que realmente funcione en Typescript. Al igual que:
"extends": [
"eslint:recommended",
"plugin:@typescript-eslint/eslint-recommended",
"plugin:@typescript-eslint/recommended"
],
@typescript-eslint/recommended parece ser lo que permite que eslint:recommended se ocupe de las construcciones de Typescript de manera efectiva. Sin embargo, no estoy seguro de cómo afectaría a sus otras extensiones.
creo que el uso de "plugin:@typescript-eslint/recommended"
introduce un montón de reglas no deseadas. Uno es probablemente mejor usando "@typescript-eslint/no-unused-vars"
regla ESLint en su lugar.
"rules":
"no-unused-vars": "off",
"@typescript-eslint/no-unused-vars": [
"error"
]
Referencia: https://github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/no-unused-vars.md
tengo mucho false errores con las últimas versiones de TypeScript/ES-Lint y descubrí que propusieron una regla experimental para corregir el no-unused-vars
que se rompe y con la regla experimental @typescript-eslint/no-unused-vars-experimental
finalmente funciona como esperaba.
Antes del cambio de mi lado, tenía múltiples false errores al usar interfaces/tipos que dicen que estos vars no se usaron (que, por supuesto, nunca se usarán ya que no son variables sino interfaces/tipos)… y en caso de que tenga curiosidad sobre el código en sí, aquí es el PR agregando esta regla experimental que es como encontré la regla.
Aquí hay un subconjunto de mi actualizado .eslintrc
expediente
"parser": "@typescript-eslint/parser",
"extends": [
"plugin:@typescript-eslint/recommended"
],
"rules":
"@typescript-eslint/no-unused-vars": "off",
"@typescript-eslint/no-unused-vars-experimental": "error",
"no-unused-vars": "off"
y ahora por fin he vuelto a la normalidad 🙂
EDITAR (enero de 2021)
Como lo mencionó Brad (un mantenedor del proyecto) en el comentario a continuación, esta es (era) una solución temporal y ahora está obsoleta. De su comentario (abajo), ahora podemos usar directamente @typescript-eslint/no-unused-vars
por el mismo comportamiento previsto. Gracias a Brad por la información. También puedo confirmar que cambiar de nuevo a @typescript-eslint/no-unused-vars
ahora funciona para mí (actualicé mi código y todo está bien ahora).
Este no es el camino a seguir, y debe evitarlo.
@typescript-eslint/no-unused-vars-experimental
está en desuso y se eliminará en la próxima versión principal. Actualice a la última versión de las herramientas y simplemente use@typescript-eslint/no-unused-vars
. Fuente: Soy el mantenedor del proyecto.
RESPUESTA ACTUALIZADA desde enero de 2021
Así que aquí está la última actualización de mi .eslintrc
expediente
"parser": "@typescript-eslint/parser",
"extends": [
"plugin:@typescript-eslint/recommended"
],
"rules":
"@typescript-eslint/no-unused-vars": "error",
"no-unused-vars": "off"
Nos encantaría que puedieras dar visibilidad a esta reseña si te ayudó.