TS2554
Número incorrecto de argumentos
Expected 2 arguments, but got 1.Las palabras del propio compilador. Sin traducir — es la cadena que pegaste en el buscador.
La firma de llamada seleccionada requiere más argumentos de los que proporciona esta llamada.
Reproducción
function pair(a: string, b: number) {} pair('x')
La compilación afirma que esto emite exactamente este código.
Por qué lo dice el compilador
Un parámetro obligatorio forma parte del contrato. Omitirlo haría que la implementación recibiera `undefined` aunque su tipo diga que no puede ocurrir, así que la llamada se rechaza antes de romper esa promesa.
Arreglos
- 01
function pair(a: string, b: number) {} pair('x', 1)
Proporciona todos los argumentos obligatorios cuando la función necesita ambos.
- 02
function pair(a: string, b = 0) {} pair('x')
Da al parámetro un valor predeterminado cuando omitirlo tenga una interpretación útil y segura.
Conclusión
Corrige el llamante cuando la entrada sea obligatoria; cambia la firma solo si la operación admite de verdad la omisión.
