Vai al contenuto principale
Traduzione Beta Non Ufficiale

Questa pagina è stata tradotta da PageTurner AI (beta). Non ufficialmente approvata dal progetto. Hai trovato un errore? Segnala problema →

Monitoraggio dell'Area di Lavoro

nota

Il monitoraggio dell'area di lavoro è disponibile a partire da Lerna 6.4.0.

Lerna può monitorare le modifiche ai file all'interno dei pacchetti ed eseguire automaticamente comandi dalla radice del repository. Questa funzionalità è utile quando devi ricostruire pacchetti o rieseguire test durante l'aggiornamento dei file nel tuo flusso di sviluppo.

Ciò elimina la necessità di configurare manualmente il monitoraggio per ogni singolo pacchetto.

Esempi

Monitora tutti i pacchetti e visualizza il nome del pacchetto e i file modificati:

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

Monitora tutti i pacchetti ed esegue lo script "build" su un pacchetto quando un file al suo interno viene modificato:

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

Monitora tutti i pacchetti ed esegue lo script "build" su tutto ciò che è influenzato dalle modifiche:

$ lerna watch -- lerna run build --since

Monitora un singolo pacchetto ed esegue lo script "build" quando un file al suo interno viene modificato:

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

Monitora un singolo pacchetto e le sue dipendenze, eseguendo lo script "build" su qualsiasi di essi che venga modificato:

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

Monitora tutti i pacchetti ed esegue lo script build per il pacchetto modificato e tutti i pacchetti che dipendono da esso:

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

Per filtraggi più avanzati, consulta la documentazione sulle opzioni di filtro. Per ulteriori opzioni disponibili, vedi la documentazione di lerna watch.

Variabili d'Ambiente per il Monitoraggio

Lerna imposterà le variabili d'ambiente $LERNA_PACKAGE_NAME e $LERNA_FILE_CHANGES durante l'esecuzione del comando interno. Queste possono essere utilizzate per personalizzare il comando eseguito.

  • $LERNA_PACKAGE_NAME verrà sostituito con il nome del pacchetto modificato.

  • $LERNA_FILE_CHANGES verrà sostituito con i file modificati. Se vengono rilevate più modifiche in un ciclo, $LERNA_FILE_CHANGES le elencherà tutte separate da spazi.

nota

Quando usi $LERNA_PACKAGE_NAME e $LERNA_FILE_CHANGES, dovrai proteggere il simbolo $ con una barra rovesciata (\). Vedi gli esempi sopra.

Esecuzione con Gestori di Pacchetti

Gli esempi precedenti mostrano l'uso diretto di lerna nel terminale. Tuttavia, puoi anche usare lerna tramite un gestore di pacchetti senza aggiungerlo al tuo PATH:

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

Quando usi npx, dovrai usare -c e racchiudere l'intero comando lerna watch tra apici singoli ('). Senza questo accorgimento, npx tenterà di sostituire le variabili d'ambiente per il monitoraggio prima di passare il comando a lerna, risultando in valori sempre vuoti per $LERNA_PACKAGE_NAME e $LERNA_FILE_CHANGES.

nota

Se usi Lerna su Windows, devi racchiudere le variabili d'ambiente tra '%'. Ad esempio:

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