"Si un trabajador quiere hacer bien su trabajo, primero debe afilar sus herramientas." - Confucio, "Las Analectas de Confucio. Lu Linggong"
Página delantera > Programación > Aventuras de TypeScript con desafíos tipográficos: selección del día

Aventuras de TypeScript con desafíos tipográficos: selección del día

Publicado el 2024-11-03
Navegar:764

Hola a todos.
Estoy trabajando en desafíos tipográficos para profundizar en TypeScript.

Hoy me gustaría compartir lo que aprendí sobre el Pick.

- El desafío -

interface Todo {
  title: string
  description: string
  completed: boolean
}

type TodoPreview = MyPick

const todo: TodoPreview = {
    title: 'Clean room',
    completed: false,
}

Implementar el Pick genérico integrado sin usarlo.
Construye un tipo seleccionando el conjunto de propiedades K de T.

- Descripción -

El desafío es crear su propia versión del tipo de utilidad Pick, que TypeScript proporciona como utilidad estándar.

- Mi solución -

interface Todo {
  title: string;
  description: string;
  completed: boolean;
}

type MyPick = {
  [k in U]: T[k];
};

type TodoPreview = MyPick;

const todo: TodoPreview = {
  title: "Clean room",
  completed: false,
};

- Explicación -

Déjame explicarte, línea por línea.

En la primera línea, MyPick recibe dos argumentos: T y U extiende la clave de T.

TypeScript Adventures with type-challenges – Day Pick

T: El tipo base que incluye todas las propiedades.
U extiende la clave de T: especifica las propiedades que se incluirán en el tipo de salida.

Acerca de la clave de
Acerca de las extensiones

En la segunda línea,
Crea un nuevo tipo que extrae solo las propiedades especificadas del argumento dado.

TypeScript Adventures with type-challenges – Day Pick

Acerca de los tipos asignados como [k en U]

Como puede ver a continuación, se crea un nuevo tipo que excluye la descripción de Todo proporcionando solo el título y completándolo en MyPick.

TypeScript Adventures with type-challenges – Day Pick

Codificación feliz☀️

Declaración de liberación Este artículo se reproduce en: https://dev.to/noah-00/typescript-adventures-with-type-challenges-day-1-pick-5fdj?1 Si hay alguna infracción, comuníquese con [email protected] para borrarlo
Último tutorial Más>

Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.

Copyright© 2022 湘ICP备2022001581号-3