Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

177
Vistas
¿Cómo enumero las opciones asignadas a un tipo?

Un paquete de Node.js que estoy usando tiene un método que toma un argumento requerido para ser de un tipo que a través de IntelliSense puedo ver que está definido con una declaración mecanografiada en el formulario:

 export declare type ArgType = 'A' | 'B' | 'C';

Me gustaría llamar al método del paquete usando cada valor permitido para este argumento; en otras palabras, algo en la forma:

 ['A','B','C'].forEach((v) => packageObject.packageMethod(v));

excepto que me gustaría evitar codificar una copia estática de la lista de opciones.

about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

Si tiene la capacidad de modificar el paquete, puede derivar la unión de cadenas de una matriz de literales de cadena de solo lectura y también exportar la matriz para usarla en el código de tiempo de ejecución:

Enlace de juegos TS

 // exported as values (usable at runtime) export const stringArgs = ['A', 'B', 'C'] as const; // exported as union of strings (not usable at runtime) export type ArgType = typeof stringArgs[number]; // "A" | "B" | "C" export function fn (arg: ArgType): void { // ... }

De lo contrario, deberá analizar los valores utilizando la API del compilador , como lo menciona @ASDFGerte .

about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda