Pomocou týchto knižníc a nástrojov vytvorte moderné programy CLI so všetkými zvončekmi a píšťalkami, ktoré potrebujete.
Rozhranie príkazového riadka (CLI) je spôsob interakcie s počítačovým programom alebo operačným systémom pomocou textových príkazov. Nástroj CLI je pomocný program, ktorý môžete spustiť z príkazového riadku. Nástroje CLI zvyčajne preberajú textové príkazy od užívateľa a vykonávajú špecifické úlohy na základe príkazov.
Vysokokvalitné nástroje CLI by mali podporovať širokú škálu funkcií. Môžu analyzovať argumenty príkazového riadka a generovať pomoc pri používaní, aby okrem iných funkcií poskytli vizuálnu spätnú väzbu.
Existuje niekoľko balíkov Node.js, ktoré vám môžu pomôcť rýchlo vytvoriť nástroje CLI a ponúkajú širokú škálu funkcií a flexibility. Tu preskúmate niektoré z najlepších balíkov Node.js na vytváranie nástrojov CLI a objavíte ich kľúčové funkcie.
Commander je balík Node.js na vytváranie rozhraní príkazového riadka. Poskytuje API na definovanie príkazov, volieb a argumentov, čo uľahčuje vytváranie nástrojov CLI.
Commander sa stará o analýzu argumentov do možností a argumentov príkazového riadku. Okrem toho zobrazuje chyby pri problémoch a nerozpoznaných možnostiach a automaticky generuje pomoc pri používaní (dokumentácia CLI).
Ak chcete nainštalovať Commander ako závislosť, spustite tento príkaz:
npm Inštalácia veliteľ
Tu je príklad, ako používať Commander v aplikácii Node.js:
// index.js
konšt { Príkaz } = vyžadovať("veliteľ");// vytvorenie inštancie príkazu
konšt program = Nový Príkaz ();// nástroj na vytváranie
program
.názov("Math-util")
.description("Nástroj CLI na vykonávanie jednoduchých matematických funkcií")
.verzia("1.0.0");// pridanie príkazu
program
.príkaz("pridať")
.description("Pridať dve čísla")
.argument("" , "prvé číslo")
.argument("" , "druhé číslo")
.akcia((a, b) => {
konzoly.log(parseInt(a) + parseInt(b));
});
program.analyzovať();
Vyššie uvedený príklad je nástroj CLI na vykonávanie jednoduchých matematických funkcií. Vyššie uvedený blok kódu implementoval funkciu „pridať“ pre nástroj CLI pomocou metód z commander.js.
Vyššie uvedený nástroj CLI môžete použiť spustením tohto príkazu vo svojom termináli:
index uzla pridať 2 2
Môžete tiež zobraziť automaticky generovanú pomoc pre nástroj CLI spustením tohto príkazu:
uzol cli -h
S balíkom Commander.js môžete pomocou jednoduchých príkazov ihneď po vybalení zostaviť plne funkčné a funkčné nástroje CLI s dokumentáciou.
Inquirer.js je balík Node.js na vytváranie interaktívnych používateľských rozhraní príkazového riadka. Poskytuje sadu komponentov používateľského rozhrania, ako sú výzvy, zoznamy a začiarkavacie políčka, čo uľahčuje vytváranie nástrojov CLI, ktoré môžu interagovať s používateľom.
Ak chcete nainštalovať Inquirer ako závislosť, spustite tento príkaz:
npm Inštalácia pýtajúci sa
Tu je príklad použitia Inquirer.js:
// index.js
importovať pýtajúci sa od"pytateľ";
pýtajúci sa
.prompt([
{
typu: "vstup",
názov: "názov",
správa: "Ako sa voláš?",
},
])
.potom((odpovede) => {
konzoly.log('Dobrý deň ${answers.name}`);
});
Tento príklad používa Inquirer.js na prevzatie vstupu používateľa z terminálu a zaprotokoluje správu s pozdravom používateľa.
Inquirer.js nepodporuje CommonJS modulový systém. Musíte použiť modulový systém ES6 alebo downgradovať balík na verziu 8.0.0.
Inquirer.js poskytuje mnoho možností prispôsobenia výziev vrátane volieb, overenia a predvolených hodnôt, vďaka čomu je ideálny na vytváranie interaktívnych nástrojov CLI, ktoré môžu interagovať s používateľom.
Chalk je balík Node.js, ktorý poskytuje jednoduchý spôsob pridávania farieb do výstupu terminálu, vďaka čomu je vytváranie čitateľných a atraktívnych nástrojov CLI jednoduché.
Poskytuje veľkú flexibilitu pri definovaní farieb a štýlov textu. Chalk však nemôžete použiť izolovane na vytváranie nástrojov CLI; musíte ho použiť s balíkmi ako Commander a Inquirer.js.
Ak chcete nainštalovať Chalk ako závislosť, spustite tento príkaz:
npm Inštalácia krieda
Tu je príklad, ako použiť kriedu na pridanie farieb do výstupu konzoly:
importovať krieda od"krieda";
konzoly.log (krieda.modra("Ahoj svet!"));
konzoly.log(krieda.red.tučný("POZOR"));
konzoly.log(krieda.biely.kurzíva("úspech"));
konzoly.log(
krieda.žltá.bgBlue("TototextmáažltápoprediaaModrápozadie")
);
Krieda poskytuje mnoho ďalších metód na definovanie farieb a štýlov, vrátane zdôrazniť, prečiarknutie, rôzne odtiene farieb pozadia a mnoho ďalších.
Chalk nepodporuje modulový systém CommonJS. Musíte použiť modulový systém ES6 alebo downgradovať balík na verziu 4.0.0.
Krieda je skvelý balík, vďaka ktorému budú vaše nástroje CLI vizuálne príťažlivejšie a čitateľnejšie. Navyše ho môžete jednoducho integrovať do svojho existujúceho kódu bez zložitej konfigurácie.
Node Spinner je balík Node.js, ktorý poskytuje jednoduchý spôsob zobrazenia animácie spinneru v nástrojoch CLI. Tento balík môžete použiť na označenie, že prebieha dlhotrvajúci proces a poskytnúť používateľovi vizuálny signál, že nástroj stále funguje.
Ak chcete nainštalovať Node Spinner ako závislosť, spustite tento príkaz:
npm Inštalácia cli-spinner
Tu je príklad použitia Node Spinner na zobrazenie animácie spinneru:
konšt Spinner = vyžadovať("cli-spinner").Spinner;
konšt spinner = Nový Spinner("spracúva sa... %s");
spinner.setSpinnerString("|/-\\\\");
spinner.začať();setTimeout(() => {
spinner.text = "Úloha dokončená.";
setTimeout(() => {
spinner.stop();
}, 500);
}, 5000);
Tento kód používa knižnicu na zobrazenie číselníka, kým sa proces nedokončí. Pomocou kódu je simulovaná operácia, ktorá trvá 5 sekúnd setTimeout. Na konci času zmení zobrazovaný text z „spracúva sa...“ na „Úloha dokončená“. a zastaví rotáciu o 0,5 sekundy neskôr.
Node Spinner poskytuje celý rad možností prispôsobenia, ako je zmena štýlov číselníka a textu. Podporuje tiež viacero spinnerov, čo vám umožňuje zobraziť rôzne animácie pre rôzne časti vášho nástroja CLI.
Figlet je balík Node.js, ktorý poskytuje jednoduchý spôsob vytvoriť ASCII umenie z textu.
Ak chcete nainštalovať figlet ako závislosť, spustite tento príkaz:
npm Inštalácia figúrka
Tu je príklad, ako použiť figlet na generovanie ASCII art:
konšt figúrka = vyžadovať("figúl");
figúrka ("Ahoj Svet!!", (chyba, údaje) => {
if (chyba) {
konzoly.log("Prepáčte, niečo sa pokazilo");
konzoly.dir (chyba);
vrátiť;
}
konzoly.log (údaje);
});
Vyššie uvedený príklad vytvára ASCII art s reťazcom „Hello World!!“ pomocou Figlet a prihlási ho do konzoly.
Spustenie tohto príkladu by malo priniesť nasledujúci výstup:
Figlet poskytuje mnoho štýlov písma, ktoré môžete použiť na prispôsobenie vzhľadu vašej grafiky ASCII. Štýl písma môžete určiť odovzdaním objektu volieb do figúrka funkciu.
Napríklad:
figúrka ("Ahoj Svet!!", { font: "zvonček" }, (chyba, údaje) => {})
Používanie Figletu v nástroji CLI pridáva vašim nástrojom vizuálny záujem a robí ich pre používateľov pútavejšími.
Pri výbere balíkov pre váš nástroj CLI musíte zvážiť svoje potreby a vybrať balíky, ktoré poskytujú funkčnosť, štýl a kompatibilitu, ktoré ich spĺňajú.
Ekosystém Node.js poskytuje rôzne balíky, ktoré dokážu analyzovať argumenty príkazového riadka, vytvárať používateľské rozhranie príkazového riadka, zobrazovať štylizovaný text a mnohé ďalšie. Využitie správneho mixu vám umožní vytvárať nástroje CLI, ktoré sú vysoko funkčné a užívateľsky prívetivé.