Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

151
Visualizações
¿Es posible producir una clase genérica indexada por una condición en mecanografiado?

Supongamos un esquema de validación como este:

 export class User { @IsNotEmpty() id: number; @IsNotEmpty() name : String @IsNotEmpty() hair : String }

Y estoy usando este esquema para la inserción del usuario en mi base de datos, sin embargo, quiero reutilizar este mismo esquema para la actualización de datos, pero ni el nombre ni las variables de cabello deben estar vacías ahora.

Entonces, en lugar de crear una nueva clase para eso, será mejor si un índice de un tipo en la clase decide cuándo quiero ambas preposiciones.

 type Optional = () class Required extends Optional {} class NotRequired extends Optional {} export class User<N extends Optional> { @validateIf(() => /* check if Optional extends for Required */) @IsNotEmpty() id: number; @IsNotEmpty() name : String @IsNotEmpty() hair : String }

Básicamente, User<Required> requerirá los decoradores de IsNotEmpty y User<NotRequired> no requerirá los decoradores.

Sé que TypeScript no puede elevar el valor de tipo para el tiempo de ejecución, pero tal vez haya una forma en tiempo de compilación puro.

about 4 years ago · Juan Pablo Isaza
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda