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

399
Vistas
Cómo hacer que la aplicación Node y React compartan clases

Estoy creando una aplicación Node y React, ambas usando TypeScript. Su árbol de directorios es el siguiente:

ingrese la descripción de la imagen aquí

Mi pregunta:

Dado que estoy usando el mismo lenguaje para ambas pilas, y en el futuro se agregará React Native también usando TypeScript, me pregunto cómo puedo crear un grupo de clases para usar con todas ellas.

Por qué quiero hacer esto:

SECO (No te repitas): Mi intención es aprovechar al máximo el uso del mismo lenguaje de programación en todas las capas, por lo que no tiene sentido crear dos clases iguales.

Lo que he probado hasta ahora:

Creé una tercera carpeta llamada "util" y puse una clase genérica solo para probar Node y React usándola. Me gusta esto:

ingrese la descripción de la imagen aquí

En Node.js utilicé el siguiente comando para importarlo:

 import Person from "../../util/person.class";

Y en React.js, usé la misma lógica para importarlo:

 import Person from "../../util/person.class";

Como ya esperaba, ambos niegan usar archivos que están fuera de sus respectivas carpetas raíz:

ingrese la descripción de la imagen aquí

ingrese la descripción de la imagen aquí

También busqué en Internet sobre esto y encontré un comando de "expulsión" que, una vez que se usa, no hay vuelta atrás, lo que sea. Me gustaría evitar tales formas. ¿Hay algún enfoque en el que pueda tomar a mi favor?

También quiero mencionar que creé un tsconfig.json para backend usando "tsc --init" y configuré rootDir como "./src/" y outputDir como "./dist/".

Gracias.

over 4 years ago · Santiago Trujillo
2 Respuestas
Responde la pregunta

0

Puede configurar un tercer proyecto que tenga la funcionalidad compartida. Luego, puede publicar el paquete compartido en un repositorio npm. Y luego puede instalar el paquete compartido en el proyecto frontend y backend.

over 4 years ago · Santiago Trujillo Denunciar

0

Si desea enviar la reacción desde el servidor, los archivos de front-end deben estar en la carpeta de back-end

 /app root / back-end /shared-front-end-classes /front-end-desktop /front-end-mobile

Aunque esta no es la mejor solución.

La mejor solución es alojar el front-end en un servidor diferente y hacer que el back-end sea totalmente funcional con API.

Por ejemplo :

Tengo un blog que alojo el

Interfaz:

Páginas de Github "Soporte reaccionar a través de un pequeño paquete npm "

back-end:

Alojado en Heroku

DB:

Estoy usando mongoAtlas "Una base de datos en la nube"


ahora tiene 3 lugares separados para guardar todo su código de forma independiente entre sí

Ahora, para su otro problema, desea usar las mismas clases en los dos front-end

Para mí, generalmente hago un pequeño repositorio con todos los componentes/páginas que quiero y luego lo importo en cualquier proyecto para uso futuro.

No estoy seguro si esto sigue el concepto DRY pero no escribirás tu código dos veces

over 4 years ago · Santiago Trujillo 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