Szybka pomoc

Ściągawka z parsera opcji Nopt

Szybki przewodnik po Nopt (parserze opcji npm dla Node.js): definicje typów, skróty, obsługa pozostałych argv i walidacja.

· Opublikowano

nopt to parser opcji używany wewnętrznie przez npm oraz wiele narzędzi wiersza poleceń.

Podstawowe użycie

const nopt = require('nopt');

// 1. Define expected option types
const knownOpts = {
  foo: [String, null],
  size: ['big', 'medium', 'small'],
  many: [String, Array],
  debug: Boolean,
  version: Boolean,
  help: Boolean
};

// 2. Define short aliases
const shortHands = {
  h: '--help',
  v: '--version',
  d: '--debug'
};

// 3. Parse arguments
const parsed = nopt(knownOpts, shortHands, process.argv, 2);

Struktura wyjściowa

Dla następującego polecenia CLI:

node app.js --size big -d input1.txt input2.txt

Wynikowy obiekt:

{
  size: 'big',
  debug: true,
  argv: {
    remain: ['input1.txt', 'input2.txt'], // Non-option positional arguments
    cooked: ['--size', 'big', '--debug', 'input1.txt', 'input2.txt'],
    original: ['--size', 'big', '-d', 'input1.txt', 'input2.txt']
  }
}

Obsługiwane typy

  • String
  • Boolean
  • Number
  • Array
  • Date
  • path (normalizuje ścieżki)
  • url (waliduje adresy URL)
  • Wyliczenia (Enums): ['small', 'medium', 'large']

Źródła

Powiązane tematy