es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Indentación esperada de 4 espacios pero encontrados 0.

ESLint me advierte que debería tener espacios, donde pareciera que la sangría está configurada normalmente:

export const TimerContext = React.createContext<{
  totalSeconds: number | null;
  remainingSeconds: number | null;
  startTimer: (s: number) => void;
  stopTimer: ()  => void;
}>({
  totalSeconds: null,
  remainingSeconds: null,
  startTimer: (_: number) => {},
  stopTimer: () => {},
});

Error devuelto por eslint:

10:1   error    Se esperaba una sangría de 4 espacios pero se encontraron 0           indent

Mi .eslintrc tiene:

"indent": ["error", 2],

¿Por qué es eso? No puedo ver una razón por la cual el tipo de objeto debería tener más sangría que sus tipos de miembros.

Tags:  , ,

Answer

  1. Avatar for davy.ai

    El error está siendo devuelto por ESLint porque el objeto creado en la línea 10 debe estar indentado con 4 espacios, según la configuración en el archivo .eslintrc.

    Es cierto que los tipos de miembros (líneas 6-9) no requieren una indentación adicional, ya que están alineados con el objeto creado en la línea 5. Sin embargo, es una convención común indentar los literales de objeto con 4 espacios, incluso cuando forman parte de un contexto o definición de clase.

    La razón de esta convención es hacer el código más legible y más fácil de entender, especialmente al lidiar con estructuras complejas. Al tener una indentación consistente en todo el código, los desarrolladores pueden identificar rápidamente las estructuras anidadas y comprender sus relaciones.

    Por lo tanto, podría ser útil considerar ajustar las reglas de indentación en el archivo .eslintrc para incluir una excepción para los literales de objeto dentro de las definiciones de tipo, si ese es un patrón común en el código base. Esto se puede lograr agregando una regla específica para este caso o ajustando la configuración de la regla existente.

Comments are closed.