Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lära Använda Commander-modulen för CLI-appar | Bygga Konsolapplikationer med Node.js
Backendutveckling med Node.js och Express.js

bookAnvända Commander-modulen för CLI-appar

Att utveckla ett kommandoradsgränssnitt (CLI) med en modul som Commander kan göra processen mer hanterbar. Även om Node.js erbjuder inbyggda mekanismer för att hantera kommandoradsargument, kan dessa snabbt bli svårhanterliga när CLI:t växer. Här är Commander till stor hjälp, eftersom det erbjuder följande fördelar:

  • Effektiviserad CLI-utveckling: Commander förenklar skapandet av ett CLI genom att minska komplexiteten, vilket gör att vi kan fokusera på att definiera kommandon och deras funktioner;
  • Detaljerade beskrivningar av kommandon och alternativ: Med Commander kan vi enkelt tillhandahålla beskrivningar för kommandon och alternativ, vilket förbättrar användarvänligheten för CLI:t;
  • Automatisk argumenttolkning: Commander automatiserar processen för att tolka kommandoradsargument, vilket minimerar mängden manuell kod för argumenthantering som vi behöver skriva.

Installera Commander-modulen

För att börja behöver vi installera Commander-modulen från NPM. Oroa dig inte, processen är enkel. Innan vi kan börja använda Commander-modulen måste vi lägga till den i vårt projekt. Kör bara följande kommando för att installera den:

npm install commander

Skapa kommandon och alternativ

Med Commander kan vi definiera kommandon, specificera deras beteende och även tillhandahålla beskrivningar. Dessutom kan vi förklara alternativ som modifierar kommandonas beteende. Här är en förhandsvisning av vad vi kan åstadkomma med Commander:

Definiera ett kommando

För att definiera ett kommando, använd metoden .command() på programobjektet. Grundstrukturen är följande:

program.command('commandName [arguments]')
  • commandName: Namnet på kommandot;
  • [arguments] : Valfria argument som kommandot accepterar.

Lägga till kommandobeskrivningar

En beskrivning för kommandot kan anges med metoden .description():

program.command('commandName [arguments]').description('Description of the command');

Hantera kommandons åtgärder

Ange åtgärden som ska utföras när kommandot körs med metoden .action(). Här definieras logiken som är kopplad till kommandot:

program.command('commandName [arguments]').action((...arguments) => {
  // Command logic goes here
});

Här är ett komplett exempel:

program
  .command('greet <name>')
  .description('Greet a person')
  .action((name) => {
    console.log(`Hello, ${name}!`);
  });

Här är kodexemplet från videon:

const { program } = require("commander");

program
  .version("1.0.0")
  .command("greet <name>")
  .description("Greet a person")
  .action((name) => {
    console.log(`Hello, ${name}!`);
  });

program.parse(process.argv);

Prova själv

Lärande upplevs bäst genom praktisk övning. Prova att köra denna kod på din dator och se resultatet. Interagera med skriptet och upptäck möjligheten att skapa unika hälsningsmeddelanden med hjälp av Commander!

Var allt tydligt?

Hur kan vi förbättra det?

Tack för dina kommentarer!

Avsnitt 2. Kapitel 6

Fråga AI

expand

Fråga AI

ChatGPT

Fråga vad du vill eller prova någon av de föreslagna frågorna för att starta vårt samtal

Suggested prompts:

Can you explain how to add more commands using Commander?

What happens if I run the script without providing a name?

How can I add options (like flags) to my commands?

Awesome!

Completion rate improved to 2.56

bookAnvända Commander-modulen för CLI-appar

Svep för att visa menyn

Att utveckla ett kommandoradsgränssnitt (CLI) med en modul som Commander kan göra processen mer hanterbar. Även om Node.js erbjuder inbyggda mekanismer för att hantera kommandoradsargument, kan dessa snabbt bli svårhanterliga när CLI:t växer. Här är Commander till stor hjälp, eftersom det erbjuder följande fördelar:

  • Effektiviserad CLI-utveckling: Commander förenklar skapandet av ett CLI genom att minska komplexiteten, vilket gör att vi kan fokusera på att definiera kommandon och deras funktioner;
  • Detaljerade beskrivningar av kommandon och alternativ: Med Commander kan vi enkelt tillhandahålla beskrivningar för kommandon och alternativ, vilket förbättrar användarvänligheten för CLI:t;
  • Automatisk argumenttolkning: Commander automatiserar processen för att tolka kommandoradsargument, vilket minimerar mängden manuell kod för argumenthantering som vi behöver skriva.

Installera Commander-modulen

För att börja behöver vi installera Commander-modulen från NPM. Oroa dig inte, processen är enkel. Innan vi kan börja använda Commander-modulen måste vi lägga till den i vårt projekt. Kör bara följande kommando för att installera den:

npm install commander

Skapa kommandon och alternativ

Med Commander kan vi definiera kommandon, specificera deras beteende och även tillhandahålla beskrivningar. Dessutom kan vi förklara alternativ som modifierar kommandonas beteende. Här är en förhandsvisning av vad vi kan åstadkomma med Commander:

Definiera ett kommando

För att definiera ett kommando, använd metoden .command() på programobjektet. Grundstrukturen är följande:

program.command('commandName [arguments]')
  • commandName: Namnet på kommandot;
  • [arguments] : Valfria argument som kommandot accepterar.

Lägga till kommandobeskrivningar

En beskrivning för kommandot kan anges med metoden .description():

program.command('commandName [arguments]').description('Description of the command');

Hantera kommandons åtgärder

Ange åtgärden som ska utföras när kommandot körs med metoden .action(). Här definieras logiken som är kopplad till kommandot:

program.command('commandName [arguments]').action((...arguments) => {
  // Command logic goes here
});

Här är ett komplett exempel:

program
  .command('greet <name>')
  .description('Greet a person')
  .action((name) => {
    console.log(`Hello, ${name}!`);
  });

Här är kodexemplet från videon:

const { program } = require("commander");

program
  .version("1.0.0")
  .command("greet <name>")
  .description("Greet a person")
  .action((name) => {
    console.log(`Hello, ${name}!`);
  });

program.parse(process.argv);

Prova själv

Lärande upplevs bäst genom praktisk övning. Prova att köra denna kod på din dator och se resultatet. Interagera med skriptet och upptäck möjligheten att skapa unika hälsningsmeddelanden med hjälp av Commander!

Var allt tydligt?

Hur kan vi förbättra det?

Tack för dina kommentarer!

Avsnitt 2. Kapitel 6
some-alt