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

214
Vistas
Importación dinámica basada en variable de entorno

En un proyecto, tengo una variable de entorno que debería usarse para especificar si nos gustaría usar HTTPS o no:

 SSL_ENABLED=1

Basado en estas variables de entorno, ahora estoy tratando de usar el módulo https o http:

 import * as http from parseInt(process.env.SSL_ENABLED || '', 10) ? 'https' : 'http' const server = http.createServer(...)

La importación anterior arroja el siguiente error mecanografiado:

 TS1141: String literal expected.

Por supuesto que podría solucionar esto, importando https y http por separado, pero quería saber si había alguna forma de arreglar lo anterior con una sola importación.

Sin texto mecanografiado, lo siguiente funciona bien:

 const http = require('http' + parseInt(process.env.SSL_ENABLED || '', 10) ? 's' : ''))
about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

Esto es posible con la import() , que es más conveniente cuando se combina con la await de nivel superior :

 const http = await import(parseInt(process.env.SSL_ENABLED || '', 10) ? 'https' : 'http'); // ...

Tenga en cuenta que la importación dinámica puede tener un efecto negativo en los empaquetadores (ya que no pueden analizar estáticamente el gráfico del módulo para crear los paquetes), pero esto parece un código de Node.js que probablemente no esté empaquetando.

O si no puede usar la await de nivel superior por algún motivo, consuma la promesa directamente:

 import(parseInt(process.env.SSL_ENABLED || '', 10) ? 'https' : 'http') .then(http => { // ...use `http` here... });
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