Čitatelia ako vy pomáhajú podporovať MUO. Keď uskutočníte nákup pomocou odkazov na našej stránke, môžeme získať pridruženú províziu. Čítaj viac.

Skripty npm obsahujú sadu terminálových príkazov, ktoré môžete použiť na automatizáciu úloh v projekte JavaScript. Poskytujú tiež konzistentný spôsob spúšťania príkazov v rôznych prostrediach.

Skripty npm môžete nastaviť v súbore package.json, spustiť ich v príkazovom riadku a použiť širokú škálu možností na konfiguráciu ich správania.

Nastavenie skriptov npm v súbore package.json

Skripty npm zvyčajne definujete v súbore package.json, ktorý sa nachádza v koreňovom adresári vášho projektu JavaScript. Nie je to nevyhnutné, pretože môžete spúšťať skripty z iných súborov, ale súbor package.json uľahčuje prístup k vašim skriptom a ich správu.

Všimnite si, že ak chcete pokračovať, musíte mať vo svojom vývojovom prostredí nainštalované npm a Node. Tu je niekoľko užitočných článkov:

  • Ako nainštalujte Node.js a npm na Windows.
  • Ako nainštalujte Node.js a npm na Ubuntu.
instagram viewer

Ak chcete nastaviť skript npm v súbore package.json, postupujte podľa nasledujúcich krokov:

  1. Prejdite do koreňového adresára vášho projektu.
  2. Spustite npm init na termináli. Príkaz vám položí niekoľko otázok o vašom projekte. Odpovedzte na ne a vytvorte vhodný súbor package.json.
    npm init 
  3. V súbore package.json nájdite pole scripts. Tu môžete pridať názov skriptu a príkaz, ktorý má spustiť, ako páry kľúč/hodnota. Napríklad nižšie uvedený skript s názvom hello-world vypíše v termináli pri spustení „Hello world“.
    {
    "skriptá": {
    "ahoj svet": "echo \\"Ahoj svet\\""
    }
    }

Tu je niekoľko bežných skriptov pre projekty JavaScript:

  • začať: Tento skript spúšťa vývojový server. Napríklad v projekte Node môže spustiť server pomocou nodemonu.
  • stavať: Vygeneruje produkčný kód pre vašu aplikáciu a môže použiť nástroj, ako je webpack, na minimalizáciu a spojenie kódu.
  • test: Tento skript spúšťa testy definované vo vašom projekte. Môže spustiť testovací rámec ako Jest.
  • vlákna: Skript lint spúšťa nástroj na lintovanie, ako napríklad ESLint, aby skontroloval, či kód neobsahuje potenciálne chyby.
  • sledovať: Tento skript sleduje zmeny zdrojového kódu a potom spustí príkaz. Je to užitočné pri opätovnom spustení testov alebo pri prestavbe aplikácie pri zmene kódu.
  • nasadiť: Spustí príkaz, ktorý nasadí aplikáciu do určeného prostredia, ako je produkcia alebo príprava.

Pre a Post skripty

npm podporuje pre a post skripty. Predbežné skripty sa spúšťajú pred konkrétnym skriptom, zatiaľ čo dodatočné skripty sa spúšťajú po ňom. Môžete vytvoriť predbežné a následné skripty pre akýkoľvek skript, stačí pred názov skriptu pridať predponu „pre“ alebo „post“.

Nižšie sú napríklad skripty pre test a posttest, ktoré sa spustia pred a po testovacom skripte.

{
"skriptá": {
"predtest": "npm run lint",
"test": "žart",
"posttest": "npm run build"
}
}

Spustenie skriptov npm z package.json

Po pridaní skriptu npm do súboru package.json ho môžete spustiť pomocou príkazu npmrun.

Tu je syntax:

npm beh 

Ak chcete napríklad spustiť spúšťací skript definovaný skôr, použite:

spustenie chodu npm

Príkaz npmrun môžete spustiť samostatne a získať tak zoznam všetkých dostupných skriptov v projekte. Tu je niekoľko príkladov výstupu:

Skripty dostupné v [email protected] cez `npm run-script`:
ahoj-svet
echo "Ahoj svet"

Uvádza názov skriptu a príkaz, ktorý spúšťa.

Používanie skratkových príkazov na spustenie vstavaných skriptov

npm podporuje niekoľko vstavaných skriptov, ktoré môžete spustiť pomocou skratkových príkazov. Ak chcete napríklad spustiť skript npm s názvom start, môžete použiť npm start namiesto npm run start.

Je to pohodlnejšie a rýchlejšie ako písanie celého príkazu. Ďalšie vstavané skripty, ktoré môžete takto spustiť, zahŕňajú „test“, „stop“ a „reštart“.

Spustenie viacerých skriptov npm

Viaceré skripty npm môžete spustiť dvoma spôsobmi:

  • Postupne
  • Paralelne

Ak používate Linux alebo akýkoľvek iný systém podobný Unixu, môžete použiť štandard metódy spustenia viacerých príkazov naraz.

Na spustenie viacerých skriptov npm postupne použite &&, napríklad:

spustenie npm && test npm

Na spustenie viacerých skriptov npm paralelne použite &, napríklad:

npm spustiť server a npm spustiť klienta

V prostrediach iných ako UNIX môžete použiť príkaz npm-run-all alebo súbežne balík npm.

Použitie npm-run-all:

npm-run-all --paralelný serverový klient

Používa sa súčasne v súbore package.json.

"skriptá": {
"dev": "súčasne \\"npm spustiť server\\" \\"npm spustiť klienta\\"",
}

Upozorňujeme, že pred použitím balíkov npm-run-all a Concurrently musíte nainštalovať.

Riešenie bežných chýb skriptu Npm

Nižšie sú uvedené niektoré bežné chyby, s ktorými sa môžete stretnúť pri spúšťaní skriptov npm:

  • npm chyba! chýba skript — Táto chyba sa vyskytuje, keď ste nedefinovali skript, ktorý sa pokúšate spustiť v súbore package.json. Uistite sa, že názov skriptu píšete správne a že je definovaný v poli skriptov v súbore package.json.
  • Prístup zamietnutý — Táto chyba sa vyskytuje, keď nemáte povolenie na spustenie skriptu, takže sa uistite, že máte správne povolenia.
  • Chýbajúce závislosti — Táto chyba sa vyskytuje, keď skript používa balík, ktorý nie je nainštalovaný. Použite nástroj ako depcheck skontrolujte, či v súbore package.json chýbajú závislosti, potom ich nainštalujte pomocou npm install.
  • Neznámy príkaz — Táto chyba sa zvyčajne vyskytuje, keď spustíte vlastný skript ako vstavaný príkaz npm. Uistite sa, že používate npm beh alebo spúšťací skript npm pri spúšťaní vlastných skriptov.

Používanie premenných prostredia v skriptoch npm

Premenné prostredia umožňujú prenášať informácie bez ich tvrdého kódovania. Ak chcete použiť premenné prostredia v skripte npm, môžete použiť cross-env npm balík. Tento nástroj vám pomôže nastaviť premennú prostredia v akomkoľvek prostredí.

Začnite spustením tohto príkazu na termináli a nainštalujte ho ako závislosť pre vývojárov:

npm ukladám -D cross-env

Potom ho použite vo svojom skripte takto:

{
"skriptá": {
"stavať": "cross-env NODE_ENV=production webpack"
}
}

Tu cross-env nastaví premennú NODE_ENV na "production".

Odovzdávanie argumentov príkazového riadka do skriptov

Argumenty príkazového riadku môžete zadať skriptu npm pomocou dvoch pomlčiek „--“ za názvom skriptu. Napríklad nasledujúci príkaz spustí testovací skript s argumentom watch:

npm spustiť test -- --sleduj

Môžete tiež odoslať argument príkazového riadka skriptu npm takto:

npm spustiť môj port --PORT=3000

Potom k nemu pristupujte v skripte nasledovne.

"skriptá": {
"môj prístav": "echo \\"Port: $npm_config_PORT\\""
}

V systéme Windows použite toto:

"skriptá": {
"môj prístav": "echo \\"Port: %npm_config_PORT%\\""
}

Skript by mal pri spustení vypísať „Port: 3000“.

Prečo používať skripty npm?

Do súboru package.json môžete pridávať skripty, spúšťať ich na príkazovom riadku, používať pred a po hákoch a odovzdávať im argumenty riadkov a premenné prostredia.

Skripty npm sú výkonným spôsobom automatizácie úloh v projektoch JavaScript. Môžu zlepšiť váš pracovný tok a ušetriť vám čas tým, že vám poskytnú konzistentné príkazy na spustenie viacerých úloh.