TS2314
El tipo genérico necesita argumentos de tipo
Generic type 'Box' requires 1 type argument(s).Las palabras del propio compilador. Sin traducir — es la cadena que pegaste en el buscador.
Se usó un alias genérico sin proporcionar el parámetro de tipo que requiere.
Reproducción
type Box<T> = { value: T } const box: Box = { value: 1 }
La compilación afirma que esto emite exactamente este código.
Por qué lo dice el compilador
`T` es una entrada a la función de tipos `Box`. Sin argumento ni valor predeterminado, el comprobador no sabe qué tipo de valor debe contener la propiedad.
Arreglos
- 01
type Box<T> = { value: T } const box: Box<number> = { value: 1 }
Proporciona el tipo concreto requerido en este punto de uso.
- 02
type Box<T = unknown> = { value: T } const box: Box = { value: 1 }
Añade un valor predeterminado seguro solo cuando el genérico tenga un caso general con sentido.
Conclusión
Todo parámetro de tipo obligatorio necesita un argumento, igual que todo parámetro de función obligatorio necesita un valor.
