El error TS7006 de TypeScript se reporta cuando un parámetro de función no tiene anotación de tipo y TypeScript no puede inferir su tipo, por lo que usaría 'any' por defecto. Con noImplicitAny habilitado (incluido en modo strict), TypeScript rechaza esto porque 'any' deshabilita la verificación de tipos.
Por qué ocurre
- •Un parámetro de función se declara sin anotación de tipo.
- •Una variable se declara con let o const sin una anotación y sin inicializador.
- •Un parámetro de callback no está tipado y TypeScript no puede inferirlo del contexto.
Ejemplos
Código que causa el error
// tsconfig: "strict": true
function greet(name) {
return "Hello, " + name;
}Error en la terminal
error TS7006: Parameter 'name' implicitly has an 'any' type.
Cómo solucionarlo
Agrega anotaciones de tipo explícitas a todos los parámetros de función. Habilita el modo strict de TypeScript para detectar estos problemas temprano. Si el tipo es genuinamente desconocido, prefiere 'unknown' sobre 'any' y estrecha el tipo con guardas de tipo antes de usarlo.
Código corregido
function greet(name: string): string {
return "Hello, " + name;
}Errores relacionados
¿Listo para practicar tu inglés en el trabajo?
Lingua-e tiene ejercicios interactivos basados en conversaciones reales de developers: standups, code reviews, retrospectivas y más. Practica hasta que salga solo.
Prueba Lingua-e gratis