Saltar al contenido principal
Traducción Beta No Oficial

Esta página fue traducida por PageTurner AI (beta). No está respaldada oficialmente por el proyecto. ¿Encontraste un error? Reportar problema →

Monitoreo de Espacios de Trabajo

nota

El monitoreo de espacios de trabajo está disponible a partir de Lerna 6.4.0.

Lerna puede monitorear cambios en los archivos de los paquetes y ejecutar comandos automáticamente desde la raíz del repositorio. Esto es útil cuando necesitas reconstruir paquetes o volver a ejecutar pruebas mientras actualizas archivos durante tu flujo de desarrollo.

Esto elimina la necesidad de configurar manualmente el monitoreo para cada paquete individualmente.

Ejemplos

Monitorea todos los paquetes y muestra el nombre del paquete y los archivos modificados:

$ lerna watch -- echo \$LERNA_PACKAGE_NAME \$LERNA_FILE_CHANGES

Monitorea todos los paquetes y ejecuta el script "build" en un paquete cuando cambia un archivo dentro de él:

$ lerna watch -- lerna run build --scope=\$LERNA_PACKAGE_NAME

Monitorea todos los paquetes y ejecuta el script "build" en todo lo afectado por los cambios:

$ lerna watch -- lerna run build --since

Monitorea un solo paquete y ejecuta el script "build" en él cuando cambia un archivo dentro de él:

$ lerna watch --scope="my-package-1" -- lerna run build --scope=\$LERNA_PACKAGE_NAME

Monitorea un paquete y sus dependencias, ejecutando el script "build" en cualquiera de ellos que cambie:

$ lerna watch --scope="my-package-1" --include-dependencies -- lerna run build --scope=\$LERNA_PACKAGE_NAME

Monitorea todos los paquetes y ejecuta el script build para el paquete que cambió y todos los paquetes que dependen de él:

$ lerna watch -- lerna run build --scope=\$LERNA_PACKAGE_NAME --include-dependents

Para filtros más avanzados, consulta la documentación de opciones de filtro. Para más opciones disponibles, ve la documentación de lerna watch.

Variables de Entorno para Monitoreo

Lerna establecerá las variables de entorno $LERNA_PACKAGE_NAME y $LERNA_FILE_CHANGES al ejecutar el comando interno. Estas pueden usarse para personalizar el comando que se ejecuta.

  • $LERNA_PACKAGE_NAME se reemplazará con el nombre del paquete que cambió.

  • $LERNA_FILE_CHANGES se reemplazará con los archivos que cambiaron. Si se detectan múltiples cambios en un ciclo, $LERNA_FILE_CHANGES los listará separados por espacios.

nota

Al usar $LERNA_PACKAGE_NAME y $LERNA_FILE_CHANGES, necesitarás escapar el $ con una barra invertida (\). Consulta los ejemplos anteriores.

Ejecución con Gestores de Paquetes

Los ejemplos anteriores muestran cómo usar lerna directamente en la terminal. Sin embargo, también puedes usar lerna a través de un gestor de paquetes sin agregarlo a tu ruta:

pnpm:

pnpm lerna watch -- lerna run build --scope=\$LERNA_PACKAGE_NAME

yarn:

yarn lerna -- watch -- lerna run build --scope=\$LERNA_PACKAGE_NAME

npx:

npx -c 'lerna watch -- lerna run build --scope=\$LERNA_PACKAGE_NAME'
nota

Al usar npx, necesitarás usar -c y encerrar todo el comando lerna watch entre comillas simples ('). Sin esto, npx intentará reemplazar las variables de entorno de monitoreo antes de pasar el comando a lerna, resultando en valores siempre vacíos para $LERNA_PACKAGE_NAME y $LERNA_FILE_CHANGES.

nota

Si usas Lerna en Windows, debes enmarcar las variables de entorno con '%'. Por ejemplo:

$ lerna watch -- lerna run build --scope=%LERNA_PACKAGE_NAME% --include-dependents