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

154
Visualizações
¿Existe una biblioteca o una forma de alimentar un objeto y obtener un tipo de mecanografiado o una implementación de interfaz para ese objeto?

así que he estado trabajando con React y TypeScript este año y me di cuenta de lo difícil que puede ser en algún momento poder escribir algunos objetos complejos. por lo tanto, me preguntaba si podría haber una forma o una función auxiliar a la que pudiéramos llamar con un objeto y poder devolver una interfaz mecanografiada o un tipo de respuesta que luego podríamos usar para escribirlo en nuestro código y usarlo como un type para cada vez que estemos usando el objeto.

Ejemplo: digamos que tenemos un objeto como tal:

 const complexObject = { "hsl": { "h": 118.48101265822783, "s": 1, "l": 0.5, "a": 1 }, "hex": "#06ff00", "rgb": { "r": 6, "g": 255, "b": 0, "a": 1 }, "hsv": { "h": 118.48101265822783, "s": 1, "v": 1, "a": 1 }, "oldHue": 118.48101265822784 }

como puede ver, escribir este objeto puede ser algo problemático, especialmente para los desarrolladores sin experiencia como yo. ahora, si pudiera haber una biblioteca a la que pudiéramos llamar en este contexto getType , entonces podríamos hacer algo como esto:

 getType(complexObject); // return type complexObject = { hex: string; hsl: { h: number; s: number; l: number; a: number }; hsv: { h: number; s: number; v: number; a: number }; rgb: { r: number; g: number; b: number; a: number }; };
about 4 years ago · Juan Pablo Isaza
2 Respostas
Responde à pergunta

0

Si solo desea usar un tipo en un archivo de la forma en que escribió getType arriba, use typeof como en la respuesta de Ozan . Aunque typeof funciona en tiempo de ejecución para devolver una cadena en JavaScript estándar, TypeScript le da un significado adicional a typeof : en una expresión de tipo le permite reutilizar el tipo de un identificador existente.

 // Runs in the emitted JavaScript. const someValue = typeof complexObject; // "object" // Type only: not emitted to JavaScript. type SomeType = typeof complexObject; // { hsl: { ... }, ... } // Type only as well, because it's after the : so TS reads it as a type. const typedValue: typeof complexObject = getComplexObject(); // field name: type expression = initial value

Recuerde, los tipos no existen en tiempo de ejecución, por lo que nunca existe la posibilidad de que pueda devolver un tipo como un valor de tiempo de ejecución o una expresión de retorno de función como getType . Una función como getType podría devolver un valor y ese valor podría tener un tipo útil, pero no puede devolver el tipo en sí mismo con una función.

Nota al margen: si está tratando de escribir un archivo de declaración basado en el código JavaScript existente, o si desea llegar a la definición de la interfaz para poder copiarla y pegarla en su propio código, una herramienta estándar para eso es dts-gen .

about 4 years ago · Juan Pablo Isaza Relatório

0

No necesita una función como getType para recuperar el tipo como una variable y reutilizarlo en su código.

Todo lo que necesita hacer es usar el operador typeof y asignar ese valor a una variable de type .

 type ComplexObjectType = typeof complexObject;

Ahora, puede usar ComplexObjectType como un tipo para otras variables en su proyecto.

about 4 years ago · Juan Pablo Isaza Relatório
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