node package manager npm

Yargs: una utility per gestire l’interfaccia a linea di comando.

Non ci sono commenti

Foto dell'autore

By Donato Pirolo

Con l’installazione di yargs avremo a disposizione una libreria per il parsing e la gestione avanzata degli argomenti da riga di comando.

Come installare yargs da terminale

Come importare yargs nella nostra app.

Funzionamento Basilare di Yargs

Proviamo a lanciare da terminale un comando con flag– nome e valore Donato

yargs restituisce un oggetto con proprietà _ con al suo interno un'array con il comando indicato, la proprietà passata ed il valore.
Restituzione di yargs

Possiamo quindi vedere che yargs ci restituisce un oggetto contenente

  • Una proprietà _
  • Un array con al suo interno i comandi lanciati (in questo caso cerca)
  • Una proprietà chiave (in questo caso nome)
  • Un valore (in questo caso Donato)

Accesso alle proprietà ed ai comandi con yargs

Yargs accesso alle proprietà
Yargs accesso alle proprietà

Il metodo command di yargs

Per assicurarci di controllare che siano presenti flag specifici per comandi specifici, possiamo usare il metodo command di yargs, con esso infatti potremmo descrivere il comando ed i flag che ci aspettiamo di ricevere. Facciamo un esempio:

Come abbiamo specificato che al comando get, corrisponda il flag nome?

  • A command() dobbiamo passare in input un oggetto.
  • L’oggetto dovrà contenere 4 proprietà:
    • command : nome del comando
    • describe: descrive il comando
    • builder : {contiene a sua volta un oggetto che conterrà a sua volta i flag che ci aspettiamo quando viene lanciato il command appena descritto}
      • flag : nome del flag
        • describe : descrizione del flag
        • demandOption : true (per indicare che obbligatorio), false (non obbligatorio)
        • type : la tipologia del flag, ad esempio ‘string’
    • handler(argv): questa funzione conterrà al suo interno l’oggetto argv di yargs.
  • yargs.parse() : Con questa funzione abiliamo yargs con il metodo parse()

Risultato:

metodo command di yargs in funzione
metodo command di yargs in funzione

Lascia un commento