Ako vynútiť použitie priadze alebo NPM

V tomto krátkom príspevku vám ukážem, ako zabrániť použitiu npm alebo priadze, podľa vašich potrieb. Začnime!

Upraviť .npmrc

Je možné, že tento súbor nemáte vo svojej základni kódov. Ak je to váš prípad, vytvorte tento súbor v koreňovom priečinku svojej aplikácie.

Umožňuje nám určiť konfigurácie správcu balíkov a používajú ju npm aj priadza .

Váš .npmrcsúbor by mal mať engine-strictvlastnosť označenú ako true.

//.npmrc file engine-strict = true

Táto voľba povie správcovi balíkov, aby používal verziu motorov, ktorú sme zadali v package.jsonsúbore.

Upraviť package.json

Do svojho package.jsonsúboru by ste mali pridať enginessekciu, ak ju momentálne nemáte.

 //package.json { ... "engines": { "npm": "please-use-yarn", "yarn": ">= 1.19.1" }, ... }

Vo vyššie uvedenom kóde package.jsonsúbor používa verziu yarn1.19.1 alebo novšiu.

Ale npmmy určíme verziu, ktorá neexistuje.

Týmto spôsobom zaistíme, že keď sa niekto pokúsi použiť npmnamiesto yarn, dostane chybu, ktorá bude mať výstup ' please-use-yarn'.

Prebieha inštalácia NPM

Po vykonaní vyššie uvedených zmien sa pokúste spustiť npm install.

Zobrazí sa chyba, ktorá vám zabráni v používaní npm.

 npm ERR! code ENOTSUP npm ERR! notsup Unsupported engine for [email protected]: wanted: {"npm":"please-use-yarn","yarn":">= 1.19.1"} (current: {"node":"12.16.3","npm":"6.14.4"}) npm ERR! notsup Not compatible with your version of node/npm: [email protected] npm ERR! notsup Not compatible with your version of node/npm: [email protected] npm ERR! notsup Required: {"npm":"please-use-yarn","yarn":">= 1.19.1"} npm ERR! notsup Actual: {"npm":"6.14.4","node":"12.16.3"} npm ERR! A complete log of this run can be found in: npm ERR! C:\Users\YourUser\AppData\Roaming\npm-cache\_logs\2020-05-21T10_21_04_676Z-debug.log 

To, samozrejme, možno urobiť opačne, ak chcete zabrániť použitiu yarn.

Záver

Je celkom jednoduché a ľahké sa ubezpečiť, že vo vašom projekte musí byť použitý iba jeden správca balíkov.

To zníži pravdepodobnosť chýb spôsobených vývojármi, ktorí používajú rôznych správcov balíkov, a je dobrým zvykom štandardizovať pravidlá a správu kódovania projektu.

Môžete ma kontaktovať a niečo sa ma opýtať na Twitteri, Facebooku a mojich webových stránkach.