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

180
Vistas
¿Hay alguna forma de especificar las dependencias de JavaScript para los submódulos de git?

He estado trabajando en un sitio web que es una colección de aplicaciones de una sola página. Tengo un monorepo que consta de mis aplicaciones en directorios separados, y cada aplicación tiene su propio paquete.json. Además de esto, cada aplicación contiene uno o más submódulos de git, donde coloco mis bibliotecas principales (por ejemplo, una para la biblioteca "común", otra para SVG, etc.). En general, estoy contento con esta configuración. Funciona bien con las herramientas, ya que el submódulo está directamente dentro del directorio de la aplicación y facilita la versión del código.

EDITAR: una estructura de directorio de ejemplo, donde "común" es el submódulo git:

interfaz/aplicación1/común
interfaz/aplicación2/común

Dicho esto, el mayor defecto ha sido el manejo de las dependencias, ya que a veces hay dependencias que me gustaría tener en todas las aplicaciones. Dado que cada aplicación tiene su propio paquete.json, esto significa que tengo que instalar manualmente esa dependencia en todas mis aplicaciones, en caso de que alguna vez use esa dependencia en mi biblioteca común.

Lo que estoy buscando es una forma de dividir un paquete.json, de modo que pueda (por ejemplo), apuntar el paquete.json de la aplicación al paquete.json (hipotético) de la biblioteca común y heredar sus dependencias. Soy consciente de que esto no es posible con package.json, pero no puedo evitar sentir que esto es lo suficientemente común como para que exista una alternativa.

Sé que los espacios de trabajo de Yarn brindan la capacidad de crear paquetes locales, pero esto causa estragos en las herramientas del proyecto y hace que sea más difícil realizar cambios rápidos en el código.

¿Existen buenas soluciones alternativas que no impliquen la creación de un sistema de plantillas hacky? mi pila es:

  • Vite
  • Esbelto
  • Hilo (con espacios de trabajo)
about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

Digamos que tienes estas carpetas:

 - app1 - app2 - common

Y en la carpeta common tiene package.json con el paquete node-fetch , por ejemplo.

Además, en common tienes index.js con algo como esto:

 import fetch from "node-fetch"; export const getPage = async (page) => await fetch(page);

Luego, en app1 tienes app.js con:

 import { getPage } from "../common" const data = await getPage("http://x.com");

Ahora todo lo que tiene que hacer es ejecutar npm install dentro de su carpeta common .

También puede ser un submódulo de git, no importa. No necesita agregar node-fetch en su app1 para que esto funcione.

También podría enfrentar otro problema: demasiados package.json . Para lo cual escribí un script basado en listr que los encuentra todos recursivamente y ejecuta npm install o npm test para todos ellos en paralelo. Todavía no está publicado, pero puedo compartir algunos fragmentos si está interesado.

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