Kā izveidot CLI lietojumprogrammu vietnē Node.js

Kā izveidot CLI lietojumprogrammu vietnē Node.js
Tādi lasītāji kā jūs palīdz atbalstīt MUO. Veicot pirkumu, izmantojot saites mūsu vietnē, mēs varam nopelnīt filiāles komisiju. Lasīt vairāk.

CLI (Command Line Interface) lietojumprogrammas ir vienkāršotas teksta programmas, kas darbojas terminālī, lai veiktu noteiktus uzdevumus. CLI lietojumprogrammām ir izšķiroša nozīme gandrīz katra izstrādātāja un IT profesionāļa darbplūsmā.





Tie galvenokārt ir utilīta rīki, kas mijiedarbojas ar operētājsistēmu vai lietojumprogrammām, kas ir instalētas lokāli vai pieejamas internetā, lai veiktu uzdevumu saskaņā ar lietotāja ievadi un norādījumiem.





Izpratne par CLI lietojumprogrammām

Komandrindas saskarne ļauj mijiedarboties ar programmu, ierakstot teksta rindiņas. Daudzas CLI programmas darbojas atšķirīgi atkarībā no komandas, kuru izmantojat to palaišanai.





Piemēram, ls programma parāda faila informāciju un direktoriju saturu. Varat to palaist šādi:

 ls -l /home

Šī komanda ietver:



  • Programmas nosaukums: ls .
  • Opcija (vai karogs). Šajā gadījumā, -l ir opcija, kas ir saīsinājums no 'long' un sniedz detalizētāku informāciju.
  • Strīds, /mājas . Šeit arguments norāda ceļu uz direktoriju, kurā tiek rādīta informācija.

Lai gan katra programma var definēt savu komandrindas saskarni, daži elementi ir izplatīti un plaši izmantoti. Jums jāievēro šie standarti, lai kāds, kurš pārzina komandrindas saskarni, varētu viegli izmantot jūsu programmas.

Kas ir Commander.js?

Commander.js ir pakotne, kas ļauj izveidot CLI lietotnes pakalpojumā Node.js . Tam ir bagātīga funkciju bibliotēka, kas ļauj izveidot standarta CLI lietojumprogrammu, veicot lielu daļu smagā darba. Jums tikai jādefinē komandas, opcijas un funkcionalitāte savai CLI lietotnei.





Apvienojot to ar citām pakotnēm, piemēram, Chalk.js stilam, varat ātri izveidot pilnībā funkcionējošu CLI lietotni pakalpojumā Node.js.

CLI lietojumprogrammas izveide pakalpojumā Node.js, izmantojot Commander.js

Apsveriet CLI lietotnes piemēru, urbanary-cli, kas meklē vārdu nozīmi un sociālo mediju saīsinājumus no Pilsētas vārdnīca . Jūs uzzināsit, kā izveidot CLI un publicēt to vietnē npm pakotņu reģistru, lai citi to varētu instalēt.





Izveidojiet jaunu mapi un inicializējiet jaunu Node.js projektu ar šādām komandām:

 mkdir urbanary-cli 
cd urbanary-cli
npm init -y

Šī CLI izmantos Axios HTTP pieprasījumu sūtīšanai uz Urban Dictionary API. Tu vari izmantot Ātrā API lai pārbaudītu galapunktus un skatītu akreditācijas datus.

  Urban Dictionary API ekrānuzņēmums's page on Rapid API show user API credentials

Vienkārša CLI ar apakškomandu un palīdzību

Lai sāktu veidot savu CLI, instalējiet Commander un Axios ar šādu komandu:

 npm install commander axios 

Izveidojiet jaunu mapi, atkritumu tvertne , jūsu projekta direktorijā un jaunu tukšu failu, index.js :

 mkdir bin 
cd bin
touch index.js

The atkritumu tvertne (saīsinājums no 'binārā') mape ir svarīga, jo tajā ir ieejas punkta fails, ko Node izsauc, kad palaižat CLI. The index.js fails ir šis ieejas punkta fails. Tagad rediģējiet failu index.js un sāciet veidot savu CLI, izmantojot Commander.js API.

Pirmkārt, importējiet programma objekts no komandiera:

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

Jūs izmantosit programma objektu, lai definētu programmas saskarni, tostarp apakškomandas, opcijas un argumentus. Katram objektam ir atbilstošas ​​metodes; piemēram, lai definētu apakškomandu, izmantojiet komandu metodi.

Definējiet a atrast apakškomandu, lai CLI meklētu vārdus no Urban Dictionary un pievienotu tai aprakstu, izmantojot tālāk norādīto kodu:

 // index.js 
program
    .command('find <word>')
    .description('find meaning of a word or abbreviation or slang')

Tas reģistrē a atrast komanda, kas sagaida vārdu pēc tās, un tās aprakstu. Leņķiekavas nozīmē, ka vārds ir obligāts arguments; tā vietā izmantojiet kvadrātiekavas ( [] ), lai padarītu to neobligātu.

Jums vajadzētu pievienot aprakstu, jo Commander.js to izmanto palīdzības teksta ģenerēšanai. Palaižot lietojumprogrammu ar palīdzēt komandu, jūs iegūsit standarta lietošanas ceļvedi.

Lai to pārbaudītu, pievienojiet:

 program.parse()

Pēc tam palaidiet programmu un nododiet to palīdzēt komanda, lai iegūtu zemāk esošo izvadi:

google play veikals uz planšetdatora uguns
  Ekrānuzņēmums, kas parāda palīdzības komandas palaišanas rezultātu

Šādi jebkura standarta CLI lietojumprogramma parādīs savu palīdzību lietotājiem, un, izmantojot Commander, jums nav jāuztraucas par tās izveidi pašam. The -h un -- palīdzēt opcijas ir noderīgas, lai pārbaudītu komandas lietošanas rokasgrāmatu.

Opciju noteikšana un galīgās programmas sagatavošana

Varat arī definēt opciju, savienojot ķēdi opciju metodi komandas definīcijai.

Tālāk ir norādīts, kā definēt opciju, lai vārdu definīcijās iekļautu piemērus.

 program.option('-e, --example', "Display examples") 

Tālāk ir norādīts, kā definēt opciju, norādot atgriežamo definīciju skaitu:

 program.option( 
    '-c, --count [amount]',
    'amount of definitions to display (max is 10)'
)

The opciju metode pieņem divus virknes parametrus, vienu opcijas nosaukumam (gan īsajā, gan garajā formā), bet otru tās aprakstam. Papildu [summa] arguments skaitīt opcija ir parādāmo definīciju skaita vērtība.

Tagad pēdējā pievienošanas metode ir darbība metodi. Jūs īstenosit atrast komandas funkcionalitāti šīs metodes ietvaros. Pievienojiet to ķēdei, lai jūsu kods tagad izskatītos šādi:

 program 
    .command('find <word>')
    .description('find meaning of a word or abbreviation or slang')
    .option('-e, --example', "Display examples")
    .option(
        '-c, --count [amount]',
        'amount of definitions to display (max is 10)'
    )
    .action(async (word, options) => {});

Izmantojot šo iestatījumu, tālāk ir norādīta komanda, lai iegūtu trīs definīcijas lol ar piemēriem izskatīsies šādi:

 urbanary-cli find lol -e -c 3 

Vai arī izmantojot katras opcijas garo formu:

 urbanary-cli find lol --example --count 3