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

212
Visualizações
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 Respostas
Responde à pergunta

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 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