Konfigurace souboru package.json

Dokončeno

Vítá vás svět řízení projektů Node.js pomocí npm a správy balíčků. Pojďme se ponořit do základních informací o balení a o tom, jak může přebít vývojový proces.

Balení a správa balíčků

NPM, výchozí správce balíčků pro Node.js, je vaše tajná zbraň pro začlenění externího kódu do vašich projektů. Je to jako mít osobní asistenta, který vám pomůže rychleji a efektivněji vytvářet aplikace.

Balení je jako obtékání vašeho kódu pro distribuci. Váš kód a jeho závislosti je přehledně seskupuje do balíčku, který můžou snadno nainstalovat a používat ostatní. Správa balíčků je uměním zpracování těchto balíčků a zahrnuje:

  • Soubor package.json , podrobný plán projektu. Obsahuje metadata o projektu a stará se o správu závislostí a souborů balíčků.
  • Nástroj npm CLI, váš osobní pomocník pro instalaci a správu balíčků z registru npm.
  • Registr npm, pokladnice veřejných balíčků připravených k použití ve vašich projektech.

Vytvoření souboru package.json

package.json Vytvoření je stejně jednoduché jako spuštění npm init příkazu. Můžete to udělat dvěma hlavními způsoby:

  • npm init: Tento příkaz je jako popisný průvodce, který vás provede podrobným procesem, který požádá o podrobnosti o projektu, jako je jeho název, verze a popis.
  • npm init -y: Tento příkaz je verze express train npm init. Zazipuje otázky a vyplní výchozí hodnoty za vás.

Tady je náhled package.json souboru, který vygenerujete.

{
  "name": "my project",
  "version": "1.0.0",
  "description": "",
  "main": "script.js",
  "dependencies": {},
  "devDependencies": {},
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "keywords": [],
  "author": "",
  "license": "ISC"
}

Vysvětlení oblastí souborů package.json

package.json Soubor si můžete představit jako truhlu pokladu, naplněné drahocennými drahokamy, které dávají vašemu projektu její třpyt. Tyto gemy jsou vlastnosti v package.json souboru a spadají do tří hlavních kategorií:

  • Meta-informace: Tyto vlastnosti jsou jako korunní šperky, definují metainformací o projektu. Zahrnují název projektu, popis, autora, klíčová slova a další.
  • Závislosti: Jedná se o zlaté a stříbrné mince představující balíčky, které váš projekt používá. Tyto dependencies poklady drží a devDependencies vlastnosti. Během dalšího postupu se dozvíte, jak tyto vlastnosti používat k instalaci, aktualizaci a správě závislostí.
  • Skripty: Jedná se o příkazy terminálu, které provádějí úkoly projektu. Můžete vypsat skripty pro úlohy, jako je spuštění, sestavení, testování a lint.

Urychlení úloh pomocí skriptů

package.json Do souboru byste měli zahrnout alespoň čtyři běžné skripty:

  • start: Tento skript přináší váš projekt do života. Může například použít příkaz node ./src/index.js.
  • build: Tento skript připraví projekt na jeho velký debut. Může například transformovat TypeScript na JavaScript.
  • test: Tento skript zkontroluje stav projektu, obvykle pomocí testovacího balíčku.
  • lint: Tento skript vyčistí kód a vyhledá problémy se stylem a formátováním pomocí nástroje, jako je ESLint.

Tyto názvy skriptů jsou jako magická slova, všeobecně rozpoznaná v komunitě vývojářů a jsou nezbytné pro zajištění uspořádání projektu.

Standardizace názvů skriptů

V souboru package.json se skripty definují pomocí akce a příkazu:

"scripts" : {
  "<action>" : "<command>"
}

Tady je příklad:

"scripts" : {
  "start" : "node ./dist/index.js",
  "test": "jest",
  "build": "tsc",
  "lint": "eslint"
}

Spuštění skriptu

Spuštění skriptu v terminálu zadáním příkazu npm run <action>. Například npm run lint.

Akce start a test akce jsou speciální v tom, že můžete vynechat slovo run v příkazu. Místo zadávání příkazu npm run startmůžete zadat npm start.

Použití předdefinovaného vývojového prostředí

Tento trénovací modul nabízí vývojový kontejner, a to buď v prohlížeči, nebo pro místní počítač. Tento kontejner poskytuje veškeré potřebné prostředí, abyste mohli použít tento trénovací modul, aniž byste museli instalovat integrované vývojové prostředí (IDE) nebo Node.js. K dokončení tohoto trénovacího modulu nemusíte o kontejneru nic vědět.