Kaltaisesi lukijat auttavat tukemaan MUO: ta. Kun teet ostoksen käyttämällä sivustollamme olevia linkkejä, voimme ansaita kumppanipalkkion. Lue lisää.

npm-komentosarjat yhdistävät joukon päätekomentoja, joita voit käyttää JavaScript-projektin tehtävien automatisointiin. Ne tarjoavat myös johdonmukaisen tavan suorittaa komentoja eri ympäristöissä.

Voit määrittää npm-komentosarjoja package.json-tiedostoon, suorittaa ne komentorivillä ja määrittää niiden toiminnan useiden eri asetusten avulla.

Npm-komentosarjojen määrittäminen package.json-tiedostossa

Yleensä määrität npm-komentosarjat package.json-tiedostossa, joka sijaitsee JavaScript-projektisi juuressa. Tämä ei ole pakollista, koska voit suorittaa skriptejä muista tiedostoista, mutta package.json helpottaa komentosarjojesi käyttöä ja hallintaa.

Huomaa, että sinun on oltava npm ja Node asennettuna kehitysympäristöösi, jotta voit seurata sitä. Tässä on joitain hyödyllisiä artikkeleita:

  • Miten asenna Node.js ja npm Windowsiin.
  • Miten asenna Node.js ja npm Ubuntuun.
instagram viewer

Voit määrittää npm-komentosarjan package.jsonissa seuraavasti:

  1. Siirry projektisi juureen.
  2. Suorita npm init terminaalissa. Komento kysyy sinulta joitain kysymyksiä projektistasi. Vastaa heille luodaksesi sopiva package.json-tiedosto.
    npm init 
  3. Etsi paketti.json-tiedostosta komentosarjat-kenttä. Täällä voit lisätä komentosarjan nimen ja komennon, jonka sen tulisi suorittaa avain/arvo-pareina. Esimerkiksi alla oleva skripti, nimeltä hello-world, tulostaa terminaaliin "Hello world" ajettaessa.
    {
    "käsikirjoitukset": {
    "Hei maailma": "kaiku \\"Hei maailma\\""
    }
    }

Tässä on joitain yleisiä JavaScript-projektien komentosarjoja:

  • alkaa: Tämä komentosarja käynnistää kehityspalvelimen. Esimerkiksi Node-projektissa se voi suorita palvelin nodemonin avulla.
  • rakentaa: Luo tuotantokoodin sovelluksellesi ja voi käyttää työkalua, kuten verkkopakettia, pienentää ja niputtaa koodia.
  • testata: Tämä komentosarja suorittaa projektissasi määritetyt testit. Se voi suorittaa testauskehyksen, kuten Jest.
  • nukka: Lint-skripti suorittaa linting-työkalun, kuten ESLint, tarkistaakseen koodin mahdollisten virheiden varalta.
  • katsella: Tämä komentosarja tarkkailee lähdekoodia muutoksia ja suorittaa sitten komennon. Siitä on hyötyä testien uudelleen suorittamisessa tai sovelluksen uudelleenrakentamisessa koodin vaihdon yhteydessä.
  • ottaa käyttöön: Suorittaa komennon, joka ottaa sovelluksen käyttöön määritettyyn ympäristöön, kuten tuotanto- tai vaiheistusympäristöön.

Pre- ja Post-skriptit

npm tukee pre- ja post-skriptejä. Esikomentosarjat suoritetaan ennen tiettyä komentosarjaa, kun taas post-skriptit suoritetaan sen jälkeen. Voit luoda pre- ja post-skriptejä mille tahansa skriptille, vain etuliitä "pre" tai "post" komentosarjan nimeen.

Alla on esimerkiksi esitestaus- ja jälkitestauskomentosarjat, jotka suoritetaan vastaavasti ennen ja jälkeen testiskriptin.

{
"käsikirjoitukset": {
"esitesti": "npm run lint",
"testata": "vitsi",
"jälkitesti": "npm run build"
}
}

Suoritetaan npm-komentosarjat paketista package.json

Kun olet lisännyt npm-komentosarjan package.json-tiedostoon, voit suorittaa sen npmrun-komennolla.

Tässä on syntaksi:

npm juoksu 

Jos haluat esimerkiksi suorittaa aiemmin määritellyn aloitusskriptin, käytä:

npm ajon aloitus

Voit suorittaa npmrun-komennon yksinään saadaksesi luettelon kaikista projektin käytettävissä olevista komentosarjoista. Tässä on esimerkkituloste:

Komentosarjat ovat saatavilla osoitteessa [email protected] npm run-scriptin kautta:
Hei maailma
echo "Hei maailma"

Se luettelee skriptin nimen ja sen suorittaman komennon.

Pikakomentojen käyttäminen sisäänrakennettujen komentosarjojen suorittamiseen

npm tukee useita sisäänrakennettuja skriptejä, joita voit suorittaa pikakomennoilla. Jos haluat esimerkiksi suorittaa npm-komentosarjan nimeltä start, voit käyttää npm startia npm run startin sijaan.

Tämä on kätevämpää ja nopeampaa kuin koko komennon kirjoittaminen. Muita sisäänrakennettuja komentosarjoja, joita voit suorittaa tällä tavalla, ovat "testi", "stop" ja "restart".

Useiden npm-komentosarjojen suorittaminen

Voit ajaa useita npm-skriptejä kahdella tavalla:

  • Peräkkäin
  • Rinnakkain

Jos käytät Linuxia tai jotain muuta Unix-tyyppistä järjestelmää, voit käyttää standardia tapoja suorittaa useita komentoja kerralla.

Jos haluat suorittaa useita npm-skriptejä peräkkäin, käytä &&, esimerkiksi:

npm-käynnistys && npm-testi

Jos haluat ajaa useita npm-skriptejä rinnakkain, käytä &, esimerkiksi:

npm run server & npm run client

Muissa kuin UNIX-ympäristöissä voit käyttää komentoa npm-run-all tai samanaikaisesti npm-pakettia.

Käyttämällä npm-run-all:

npm-run-all --rinnakkaispalvelinasiakas

Käytetään samanaikaisesti paketissa package.json.

"käsikirjoitukset": {
"dev": "samanaikaisesti \\"npm suorita palvelin\\" \\"npm suorita asiakas\\"",
}

Huomaa, että sinun on asennettava paketit npm-run-all ja Concurrently ennen niiden käyttöä.

Yleisten Npm-skriptivirheiden vianmääritys

Alla on joitain yleisiä virheitä, joita saatat kohdata ajaessasi npm-skriptejä:

  • npm err! puuttuva käsikirjoitus — Tämä virhe ilmenee, kun et ole määrittänyt komentosarjaa, jota yrität suorittaa package.json-tiedostossa. Varmista, että kirjoitat komentosarjan nimen oikein ja että se on määritetty package.json-tiedoston komentosarjakentässä.
  • Lupa kielletty — Tämä virhe ilmenee, kun sinulla ei ole oikeutta suorittaa komentosarjaa, joten varmista, että sinulla on oikeat käyttöoikeudet.
  • Riippuvuudet puuttuvat — Tämä virhe ilmenee, kun komentosarja käyttää pakettia, jota ei ole asennettu. Käytä työkalua, kuten depcheck tarkistaaksesi, ettei paketista package.json puuttuu riippuvuuksia, ja asenna ne käyttämällä npm install -ohjelmaa.
  • Tuntematon komento — Tämä virhe ilmenee yleensä, kun suoritat mukautetun komentosarjan sisäisenä npm-komentona. Varmista, että käytät npm juoksu tai npm run-script kun suoritat mukautettuja komentosarjoja.

Ympäristömuuttujien käyttö npm-skripteissä

Ympäristömuuttujat mahdollistaa tiedon välittämisen ilman kovaa koodausta. Jos haluat käyttää ympäristömuuttujia npm-komentosarjassa, voit käyttää cross-env npm -paketti. Tämän työkalun avulla voit asettaa ympäristömuuttujan missä tahansa ympäristössä.

Aloita suorittamalla tämä komento päätteessä asentaaksesi sen kehittäjäriippuvuutena:

npm tallennan -D cross-env

Käytä sitten sitä skriptissäsi näin:

{
"käsikirjoitukset": {
"rakentaa": "cross-env NODE_ENV=tuotantoverkkopaketti"
}
}

Tässä cross-env asettaa NODE_ENV-muuttujan arvoon "tuotanto".

Komentoriviargumenttien välittäminen komentosarjoille

Voit välittää komentoriviargumentteja npm-skriptille käyttämällä kahta viivaa "--" komentosarjan nimen jälkeen. Esimerkiksi seuraava komento suorittaa testiskriptin watch-argumentilla:

npm-ajotesti katso

Voit myös lähettää komentoriviargumentin npm-skriptille seuraavasti:

npm run my-port --PORT=3000

Käytä sitä sitten komentosarjassa seuraavasti.

"käsikirjoitukset": {
"minun portti": "kaiku \\"Portti: $npm_config_PORT\\""
}

Windows-järjestelmässä käytä tätä:

"käsikirjoitukset": {
"minun portti": "kaiku \\"Portti: %npm_config_PORT%\\""
}

Skriptin pitäisi tulostaa "Port: 3000", kun suoritat sen.

Miksi käyttää npm-skriptejä?

Voit lisätä komentosarjoja package.json-tiedostoon, suorittaa ne komentorivillä, käyttää pre- ja post-koukkuja sekä välittää niille riviargumentteja ja ympäristömuuttujia.

npm-skriptit ovat tehokas tapa automatisoida tehtäviä JavaScript-projekteissa. Ne voivat parantaa työnkulkuasi ja säästää aikaa tarjoamalla sinulle johdonmukaisia ​​komentoja useiden tehtävien suorittamiseen.