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

229
Vistas
cómo cargar un archivo de configuración js en un paquete npm mecanografiado que solo será escrito en el futuro por el usuario del paquete

Estoy tratando de codificar en TypeScript un paquete NPM que debería funcionar como una herramienta CLI.

Para simplificar, digamos que el paquete tomará la exportación predeterminada de un archivo config.js escrito por el desarrollador que usa el paquete y lo imprimirá en la consola.

Entonces el desarrollador:

  1. cree un archivo config.js con export default 'hello world'
  2. escriba npx someLibrary y vea "hola mundo" en la terminal.

Este caso de uso es común en herramientas que he usado como babel, jest y webpack. Aunque ya he superado algunos desafíos técnicos en torno a eso, estoy atascado en cómo obtener el futuro archivo config.js en Typescript.

El enfoque que estoy tratando de seguir es usar importaciones dinámicas. El compilador no lo permitirá, ya que el archivo de configuración no existe en el momento de la codificación. El código es algo como esto:

 main(); async function main(): Promise<void> { const config = await import("./config.js"); console.log(config); }

Esto provoca el error del compilador: Cannot find module './config.js' or its corresponding type declarations.ts(2307) .

Mi pregunta es: ¿cómo puedo decirle a TypeScript que importe el archivo de configuración que se creará en el futuro y estará disponible solo durante el tiempo de ejecución?

Si eso es imposible, ¿cómo puedo consumir el contenido de ese archivo de configuración dentro del programa Typescript?

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

0

Mi pregunta es: ¿cómo puedo decirle a TypeScript que importe el archivo de configuración que se creará en el futuro y estará disponible solo durante el tiempo de ejecución?

una. Para una solución rápida, simplemente puede poner @ts-ignore en la línea arriba de su importación. Esto debería ignorar el error de compilación y, en tiempo de ejecución, el archivo debería importarse en consecuencia.

b. Alternativamente, también puede usar require('./config.js') en lugar de usar import. Esto también debería eliminar el error de compilación.

C. Para una solución más adecuada, puede considerar usar una función para leer el archivo en tiempo de ejecución. Dos cosas que puede considerar usar son fetch y fs

buscar

 fetch('./config.js') .then(response => response.text()) .then(text => console.log(text))

fs

 import fs from 'fs' const data = fs.readFileSync('./config.js', 'utf8') console.log(data)
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