Čitatelji poput vas podržavaju MUO. Kada kupite putem poveznica na našoj stranici, možemo zaraditi partnersku proviziju. Čitaj više.

npm skripte sadrže skup terminalskih naredbi koje možete koristiti za automatizaciju zadataka u JavaScript projektu. Oni također pružaju dosljedan način pokretanja naredbi u različitim okruženjima.

Možete postaviti npm skripte u datoteci package.json, pokrenuti ih u naredbenom retku i koristiti širok skup opcija za konfiguraciju njihovog ponašanja.

Postavljanje npm skripti u datoteci package.json

Npm skripte obično definirate u datoteci package.json koja se nalazi u korijenu vašeg JavaScript projekta. Ovo nije nužno jer možete izvršavati skripte iz drugih datoteka, ali package.json olakšava pristup i upravljanje vašim skriptama.

Imajte na umu da trebate imati instalirane npm i Node u vašem razvojnom okruženju da biste mogli pratiti. Evo nekoliko korisnih članaka:

  • Kako da instalirajte Node.js i npm na Windows.
  • Kako da instalirajte Node.js i npm na Ubuntu.

Da biste postavili npm skriptu u package.json, slijedite korake u nastavku:

instagram viewer
  1. Dođite do korijena vašeg projekta.
  2. Pokrenite npm init na terminalu. Naredba će vam postaviti neka pitanja o vašem projektu. Odgovorite im da biste izradili odgovarajuću datoteku package.json.
    npm init 
  3. U datoteci package.json pronađite polje skripti. Ovdje možete dodati naziv skripte i naredbu koju treba pokrenuti kao parove ključ/vrijednost. Na primjer, skripta ispod, pod nazivom hello-world, ispisuje "Hello world" u terminalu kada se pokrene.
    {
    "skripte": {
    "Pozdrav svijete": "jeka \\"Pozdrav svijete\\""
    }
    }

Evo nekih uobičajenih skripti za JavaScript projekte:

  • početak: Ova skripta pokreće razvojni poslužitelj. Na primjer, u Node projektu, može pokrenite poslužitelj koristeći nodemon.
  • izgraditi: Generira proizvodni kod za vašu aplikaciju i može koristiti alat kao što je webpack za smanjivanje i grupiranje koda.
  • test: Ova skripta pokreće testove definirane u vašem projektu. Može pokrenuti okvir za testiranje kao što je Jest.
  • dlačica: Lint skripta pokreće alat za linting kao što je ESLint za provjeru potencijalnih pogrešaka u kodu.
  • Gledati: Ova skripta prati izvorni kod radi promjena i zatim pokreće naredbu. Korisno je za ponovno izvođenje testova ili ponovnu izgradnju aplikacije nakon promjene koda.
  • rasporediti: Pokreće naredbu koja implementira aplikaciju u navedeno okruženje kao što je proizvodnja ili priprema.

Pre i post skripte

npm podržava prije i post skripte. Pre skripte se pokreću prije određene skripte, dok se post skripte pokreću nakon. Možete izraditi prije i poslije skripte za bilo koju skriptu, samo dodajte prefiks "pre" ili "post" imenu svoje skripte.

Na primjer, ispod su predtestne i posttestne skripte koje će se izvoditi prije i poslije testne skripte.

{
"skripte": {
"prettest": "npm run lint",
"test": "šala",
"posttest": "npm run build"
}
}

Pokretanje npm skripti iz package.json

Nakon što dodate npm skriptu u package.json, možete je pokrenuti pomoću naredbe npmrun.

Evo sintakse:

npm pokrenuti 

Na primjer, za pokretanje početne skripte definirane ranije, koristite:

npm pokrenuti početak

Naredbu npmrun možete izvršiti samostalno da biste dobili popis svih dostupnih skripti u projektu. Evo nekih primjera izlaza:

Skripte dostupne u [email protected] putem `npm run-script`:
Pozdrav svijete
echo "Zdravo svijete"

Navodi naziv skripte i naredbu koju pokreće.

Korištenje stenografskih naredbi za pokretanje ugrađenih skripti

npm podržava nekoliko ugrađenih skripti koje možete pokrenuti pomoću skraćenih naredbi. Na primjer, za pokretanje npm skripte pod nazivom start, možete koristiti npm start umjesto npm run start.

Ovo je praktičnije i brže od upisivanja cijele naredbe. Druge ugrađene skripte koje možete pokrenuti na ovaj način uključuju "test", "stop" i "ponovno pokretanje".

Pokretanje više npm skripti

Možete pokrenuti više npm skripti na dva načina:

  • Sekvencijalno
  • Paralelno

Ako koristite Linux ili bilo koji drugi sustav sličan Unixu, možete koristiti standard metode pokretanja više naredbi odjednom.

Za pokretanje više npm skripti uzastopno koristite &&, na primjer:

npm pokrenuti početak && npm test

Za paralelno pokretanje više npm skripti koristite &, na primjer:

npm run poslužitelj i npm run klijent

U ne-UNIX okruženjima možete koristiti naredbu npm-run-all ili istovremeno npm paket.

Korištenje npm-run-all:

npm-run-all --paralelni poslužiteljski klijent

Istovremena upotreba u package.json.

"skripte": {
"dev": "istovremeno \\"npm run server\\" \\"npm run klijent\\"",
}

Imajte na umu da prije korištenja morate instalirati pakete npm-run-all i Concurrently.

Rješavanje uobičajenih pogrešaka Npm skripte

Ispod su neke uobičajene pogreške na koje možete naići prilikom pokretanja npm skripti:

  • npm pogriješiti! nedostaje skripta — Ova se pogreška pojavljuje kada niste definirali skriptu koju pokušavate pokrenuti u datoteci package.json. Provjerite jeste li ispravno napisali naziv skripte i je li definiran u polju skripti datoteke package.json.
  • Dopuštenje odbijeno — Ova se pogreška pojavljuje kada nemate dopuštenje za pokretanje skripte pa provjerite imate li prava dopuštenja.
  • Nedostaju ovisnosti — Ova se pogreška pojavljuje kada skripta koristi paket koji nije instaliran. Koristite alat kao što je depcheck za provjeru ovisnosti koje nedostaju iz package.json, a zatim ih instalirajte pomoću npm install.
  • Nepoznata naredba — Ova se pogreška obično pojavljuje kada pokrenete prilagođenu skriptu kao ugrađenu npm naredbu. Obavezno koristite npm pokrenuti ili npm run-script prilikom pokretanja prilagođenih skripti.

Korištenje varijabli okruženja u npm skriptama

Varijable okoline omogućuju vam prosljeđivanje informacija bez njihovog tvrdog kodiranja. Za korištenje varijabli okruženja u npm skripti, možete koristiti cross-env npm paket. Ovaj vam alat pomaže postaviti varijablu okoliša u bilo kojem okruženju.

Započnite pokretanjem ove naredbe na terminalu da biste je instalirali kao ovisnost o razvojnom programeru:

npm spremam -D cross-env

Zatim ga upotrijebite u svojoj skripti ovako:

{
"skripte": {
"izgraditi": "cross-env NODE_ENV=produkcijski web-paket"
}
}

Ovdje cross-env postavlja varijablu NODE_ENV na "proizvodnju".

Prosljeđivanje argumenata naredbenog retka skriptama

Argumente naredbenog retka možete proslijediti npm skripti koristeći dvije crtice "--" iza naziva skripte. Na primjer, sljedeća naredba pokreće testnu skriptu s argumentom watch:

npm pokreni test -- --gledaj

Također možete poslati argument naredbenog retka npm skripti ovako:

npm pokrenite moj-port --PORT=3000

Zatim mu pristupite u skripti na sljedeći način.

"skripte": {
"moja-luka": "jeka \\"Priključak: $npm_config_PORT\\""
}

Na Windows sustavu koristite ovo:

"skripte": {
"moja-luka": "jeka \\"Priključak: %npm_config_PORT%\\""
}

Skripta bi trebala ispisati "Port: 3000" kada je pokrenete.

Zašto koristiti npm skripte?

Možete dodati skripte u package.json, pokrenuti ih na naredbenom retku, koristiti pre i post hookove i proslijediti im argumente retka i varijable okoline.

npm skripte su moćan način automatizacije zadataka u JavaScript projektima. Oni mogu poboljšati vaš tijek rada i uštedjeti vam vrijeme dajući vam dosljedne naredbe za pokretanje više zadataka.