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

125
Visualizações
Cómo abstraer implementaciones de clase JS ambientales

Tengo una abstracción de un adaptador. A través de una variable de entorno, controlo qué implementación se utiliza. No estoy satisfecho con este enfoque, ya que la variante simulada se importa en el código de producción. Me gustaría tener algo como en Symfony, donde la implementación de abstracciones se puede definir en configuraciones de servicios ambientales.

Actualmente tengo la siguiente abstracción:

 import HttpERPAdapter from "./HttpERPAdapter"; import MockERPAdapter from "./MockERPAdapter"; // todo, find an abstraction solution to not deploy this in production import httpClient from "common/HttpClient"; const create = () => { if (process.env.REACT_APP_ERP_API_URL === 'mock') { return new MockERPAdapter(); } return new HttpERPAdapter(httpClient); } const erpAdapter = create(); export default erpAdapter;
  • La variante simulada: se utiliza principalmente al desarrollar GUI cuando no tengo que depender de datos de api reales, para un desarrollo más rápido.
  • La variante productiva: para desarrollar con datos reales de api y para la construcción productiva

Estoy seguro de que una compilación en una compilación de producción contendrá la clase simulada, esto también es lo que quiero evitar.
En general, quiero que el código productivo no sepa nada sobre simulacros/servicios falsos.

¿Alguna idea sobre cómo separar la implementación simulada del código productivo?

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