Consejos para dominar los genéricos de TypeScript
Bienvenido a la serie Learn TypeScript en 5 min . Esta serie presentará los conocimientos básicos y las técnicas de TypeScript. ¡Aprendamos juntos!
Hoy profundizaremos en 5 consejos rápidos para convertirlo en un maestro en Genéricos y estará seguro de usarlos en su código.
Los genéricos realmente te ayudan mucho a hacer que tu código esté SECO (no te repitas).
Los genéricos pueden encajar en todos los sentidos para hacer que su código sea abstracto.
1). Pasar tipos a tipos
En el ejemplo anterior, puede ver que datala propiedad está dando un error, porque se dataestá asignando implícitamente any.
En el mundo de TypeScript anyse considera un error muy grande, ¿cómo podemos solucionarlo?
Una forma de obtener es asignar un tipo a datala propiedad, pero si desea reutilizarlo MyGenericTypenuevamente con uno nuevo, es posible que deba crear un nuevo tipo nuevamente y eso va en contra del principio SECO .
Aquí viene Generics al rescate.
En este caso, ahora puede pasar cualquier tipo y podemos reutilizarlo de manera eficiente.
2). Pasar tipos a tus propias funciones
Podemos crear funciones de función con tipo genérico. Considere una función con una llamada API en la que responseactualmente es de cualquier tipo y tenemos que convertir la función que llama a la API en una función genérica.
Actualmente vemos makeFetchuna función que acepta urlcomo parámetro, podemos ver resque es de cualquier tipo, pero podemos convertir esta función para que acepte un tipo genérico que podemos pasar al llamar a la función.
Podemos ver que ahora makeFetches una función genérica que tiene adjunto un ayudante de tipos.
3). Pasar tipos aset
Muchos desarrolladores no saben que podemos pasar los tipos genéricos a muchas clases integradas de TypeScript.
Podemos ver una clase de conjunto iniciada con unknownel tipo de forma predeterminada, ahora también podemos cambiar esto pasando un tipo genérico si desea hacer cumplir que solo se deben agregar números en el archivo Set.
Como podemos ver el error al agregar stringel archivo Set.
4). Inferencia de tipo
Supongamos que no pasamos el tipo pero TypeScript puede inferir el tipo por sí mismo y esta es una gran característica.
Podemos ver una función que se asigna idal objeto pasado a la función, y podemos ver el tipo de devolución asignado a la función, pero para hacerlo simple, podemos eliminar el T & { id: string }tipo de devolución de addToObject, pero TypeScript inferirá el tipo de devolución.
No pasamos el tipo al llamar a addIdToObjectla función y no asignamos el tipo de devolución, pero aún podemos ver que TypeScript infiere el tipo en sí.
5). Restricciones en genéricos
Considere el siguiente ejemplo:
Podemos ver que actualmente la función de combinación puede aceptar un tipo que no es un objeto y TypeScript
Para eliminar esto, debemos agregar una restricción que será una restricción adicional para aceptar el tipo.
Restricción de tipo también significa menos código dentro de su función para la lógica de verificación de tipo.
Conclusión
En conclusión, los genéricos proporcionan una forma de abstraer la lógica de tipos complejos y facilitan la escritura de código sólido, mantenible y bien tipificado. Son una herramienta imprescindible en el kit de herramientas de cualquier desarrollador de TypeScript y son esenciales para aprovechar al máximo el sistema de tipos en TypeScript.
Learn TypeScript in 5 min es una serie increíble que puede guiarte mucho.
Gracias chicos por leer. Espero que lo hayas disfrutado y aprendido algunas cosas nuevas relacionadas con TypeScript.
Estén atentos a más artículos como este y síganme en medium , Linkedin y Twitter para mantenerse actualizado sobre artículos interesantes sobre TypeScript.

![¿Qué es una lista vinculada, de todos modos? [Parte 1]](https://post.nghiatu.com/assets/images/m/max/724/1*Xokk6XOjWyIGCBujkJsCzQ.jpeg)



































