Výukový program Node.js NPM: Vytváření, publikování, rozšiřování a Spravovat

Obsah:

Anonim

Modul v Node.js je logické zapouzdření kódu v jedné jednotce. Je vždy dobrým programovacím postupem vždy oddělit kód takovým způsobem, aby byl lépe ovladatelný a udržovatelný pro budoucí účely. To je místo, kde moduly v Node.js přicházejí v akci.

Protože každý modul je nezávislá entita s vlastní zapouzdřenou funkčností, lze jej spravovat jako samostatnou pracovní jednotku.

V tomto výukovém programu se naučíte

  • Co jsou moduly v Node.js
  • Používání modulů v Node.js
  • Vytváření modulů NPM
  • Rozšiřující moduly
  • Publikování modulů NPM
  • Správa balíčků třetích stran s npm
  • Co je soubor package.json

Co jsou moduly v Node.js?

Jak již bylo řečeno, moduly v Node js jsou způsobem zapouzdření kódu do samostatné logické jednotky. Na trhu je k dispozici mnoho hotových modulů, které lze použít v rámci Node js.

Níže jsou uvedeny některé z populárních modulů, které se používají v aplikaci Node js

  1. Express framework - Express je minimální a flexibilní rámec webových aplikací Node js, který poskytuje robustní sadu funkcí pro web a mobilní aplikace.
  2. Socket.io - Socket.IO umožňuje obousměrnou komunikaci v reálném čase založenou na událostech. Tento modul je vhodný pro vytváření chatovacích aplikací.
  3. Jade - Jade je vysoce výkonný nástroj pro tvorbu šablon a implementovaný pomocí JavaScriptu pro uzly a prohlížeče.
  4. MongoDB - Ovladač MongoDB Node.js je oficiálně podporovaný ovladač node.js pro MongoDB.
  5. Restify - restify je odlehčený rámec, podobně jako express pro vytváření REST API
  6. Bluebird - Bluebird je plně vybavená knihovna příslibů se zaměřením na inovativní funkce a výkon

Používání modulů v Node.js

Aby bylo možné používat moduly v aplikaci Node.js, je třeba je nejprve nainstalovat pomocí správce balíků Node.

Níže uvedený příkazový řádek ukazuje, jak lze nainstalovat modul „express“.

npm install express

  • Výše uvedený příkaz stáhne potřebné soubory, které obsahují „expresní moduly“, a postará se také o instalaci
  • Jakmile je modul nainstalován, abyste mohli použít modul v aplikaci Node.js, musíte použít klíčové slovo „require“. Toto klíčové slovo je způsob, který Node.js používá k začlenění funkčnosti modulu do aplikace.

Podívejme se na příklad toho, jak můžeme použít klíčové slovo „require“. Níže uvedený příklad kódu „Guru99“ ukazuje, jak používat funkci require

var express=require('express');var app=express();app.set('view engine','jade');app.get('/',function(req,res){});var server=app.listen(3000,function(){});
  1. V prvním příkazu samotném používáme klíčové slovo „require“ k zahrnutí expresního modulu. Modul „express“ je optimalizovaná knihovna JavaScriptu pro vývoj Node.js. Toto je jeden z nejčastěji používaných modulů Node.js.
  2. Po zahrnutí modulu je nutné vytvořit objekt, aby bylo možné využívat funkce v rámci modulu. Zde se vytvoří objekt expresního modulu.
  3. Jakmile je modul zahrnut pomocí příkazu „require“ a je vytvořen „objekt“, lze vyvolat požadované metody expresního modulu. Zde používáme příkaz set k nastavení enginu zobrazení, který se používá k nastavení šablonového enginu používaného v Node.js.

    Poznámka: - (Jen pro pochopení čtenáře; šablonový stroj je přístup k vkládání hodnot do aplikace pomocí sběru dat z datových souborů. Tento koncept je velmi známý v Angular JS, kde jsou složené závorky {{key}} zvyklé na nahrazuje hodnoty na webové stránce. Slovo „klíč“ v složených závorkách v zásadě označuje proměnnou, která bude při zobrazení stránky nahrazena hodnotou.)

  4. Zde používáme metodu listen to, aby aplikace naslouchala na konkrétním čísle portu.

Vytváření modulů NPM

Node.js má schopnost vytvářet vlastní moduly a umožňuje vám zahrnout tyto vlastní moduly do vaší aplikace Node.js.

Podívejme se na jednoduchý příklad toho, jak můžeme vytvořit vlastní modul a zahrnout tento modul do našeho hlavního souboru aplikace. Náš modul udělá jednoduchý úkol a přidá dvě čísla.

Postupujme podle níže uvedených kroků, abychom zjistili, jak můžeme vytvářet moduly a zahrnout je do naší aplikace.

Krok 1) Vytvořte soubor s názvem „Addition.js“ a zahrňte níže uvedený kód. Tento soubor bude obsahovat logiku vašeho modulu.

Níže je uveden kód, který by šel do tohoto souboru;

var exports=module.exports={};exports.AddNumber=function(a,b){return a+b;};
  1. Klíčové slovo „export“ se používá k zajištění toho, aby k funkcím definovaným v tomto souboru mohl skutečně přistupovat jiný soubor.
  2. Poté definujeme funkci nazvanou „AddNumber“. Tato funkce je definována tak, aby brala 2 parametry, aab. Funkce je přidána do modulu „exportuje“, aby byla funkce veřejnou funkcí, ke které mohou přistupovat další aplikační moduly.
  3. Konečně necháme naši funkci vrátit přidanou hodnotu parametrů.

Nyní, když jsme vytvořili náš vlastní modul, který má funkci přidávání 2 čísel. Nyní je čas vytvořit aplikaci, která bude volat tento modul.

V dalším kroku uvidíme, jak vytvořit aplikaci, která bude volat náš vlastní modul.

Krok 2) Vytvořte soubor s názvem „app.js“, který je vaším hlavním souborem aplikace, a přidejte níže uvedený kód

var Addition=require('./Addition.js');console.log(Addition.AddNumber(1,2));
  1. Používáme klíčové slovo „require“ k zahrnutí funkcí do souboru Addition.js.
  2. Vzhledem k tomu, že funkce v souboru Addition.js jsou nyní přístupné, můžeme nyní zavolat funkci AddNumber. Ve funkci předáváme 2 čísla jako parametry. Poté zobrazujeme hodnotu v konzole.

Výstup :

  • Když spustíte soubor app.js, získáte výstup hodnoty 3 v protokolu konzoly.
  • Výsledkem je, že funkce AddNumber v souboru Addition.js byla volána úspěšně a v konzole byla zobrazena vrácená hodnota 3.

Poznámka: - „K instalaci modulu Node.js zatím nepoužíváme„ Správce balíků uzlů “. Důvodem je, že modul je již součástí našeho projektu na místním počítači. Správce balíků uzlů se objeví na obrázku, když publikujete modul na internetu, který vidíme v následujícím tématu.

Rozšiřující moduly

Při vytváření modulů je také možné rozšířit nebo zdědit jeden modul od druhého.

V moderním programování je zcela běžné budovat knihovnu společných modulů a poté v případě potřeby rozšířit funkčnost těchto společných modulů.

Podívejme se na příklad, jak můžeme rozšířit moduly v Node.js.

Krok 1) Vytvořte základní modul.

V našem příkladu vytvořte soubor s názvem „Tutorial.js“ a vložte níže uvedený kód.

V tomto kódu právě vytváříme funkci, která vrací řetězec do konzoly. Vrácený řetězec je „Guru99 Tutorial“.

var exports=module.exports={};exports.tutorial=function(){console.log("Guru99 Tutorial")}
  1. Exportní modul se používá tak, aby jakákoli funkce definovaná v tomto souboru mohla být k dispozici v jiných modulech v Node.js
  2. Vytváříme funkci nazvanou tutorial, kterou lze použít v jiných modulech Node.js.
  3. Když je tato funkce volána, v konzole zobrazujeme řetězec „Guru99 Tutorial“.

Nyní, když jsme vytvořili náš základní modul s názvem Tutorial.js. Nyní je čas vytvořit další modul, který rozšíří tento základní modul.

V dalším kroku prozkoumáme, jak to udělat.

Krok 2) Dále vytvoříme náš rozšířený modul. Vytvořte nový soubor s názvem „NodeTutorial.js“ a do souboru vložte níže uvedený kód.

var Tutor=require('./Tutorial.js');exports.NodeTutorial=function(){console.log("Node Tutorial")function pTutor(){var PTutor=TutorPTutor.tutorial();}}Orvar Tutor=require('./Tutorial.js');exports.NodeTutorial=function(){console.log("Node Tutorial")this.pTutor = function (){var PTutor=TutorPTutor.tutorial();}}

Následující klíčové body o výše uvedeném kódu

  1. Používáme funkci „require“ v samotném souboru nového modulu. Jelikož se chystáme rozšířit existující soubor modulu „Tutorial.js“, je třeba jej nejprve rozšířit a poté rozšířit.
  2. Poté vytvoříme funkci nazvanou „Nodetutorial“. Tato funkce bude dělat 2 věci,
  • Na konzolu odešle řetězec „Node Tutorial“.
  • Odešle řetězec „Guru99 Tutorial“ ze základního modulu „Tutorial.js“ do našeho rozšířeného modulu „NodeTutorial.js“.
  1. Zde provádíme první krok k odeslání řetězce do „Node Tutorial“ do konzoly.
  2. Dalším krokem je volání funkce z našeho modulu Tutorial, který odešle řetězec "Guru99 Tutorial" do console.log.

Krok 3) Vytvořte si hlavní soubor app.js, který je vaším hlavním souborem aplikace, a zahrňte níže uvedený kód.

var localTutor=require('./NodeTutorial.js');localTutor.NodeTutorial();localTutor.NodeTutorial.pTutor();Or use this codevar tut = new localTutor.NodeTutorial(); // Create and save objecttut.pTutor(); // Call function on object

Výše uvedený kód provádí následující věci;

  1. Náš hlavní soubor aplikace nyní volá modul „NodeTutorial“.
  2. Voláme funkci „NodeTutorial“. Voláním této funkce se v protokolu konzoly zobrazí text „Node Tutorial“.
  3. Protože jsme rozšířili náš modul Tutorial.js a odhalili funkci nazvanou pTutor. Volá také výukový modul v modulu Tutorial.js a na konzole se zobrazí také text „Guru99 Tutorial“.

Výstup:

Vzhledem k tomu, že jsme provedli výše uvedený kód app.js pomocí Node, dostaneme následující výstup v souboru console.log

  • Výukový program uzlů
  • Výukový program Guru99

Publikování modulů NPM (Node Package Manager)

Jeden může publikovat svůj vlastní modul do svého vlastního úložiště Github.

Publikováním modulu do centrálního umístění pak nebudete zatěžováni nutností instalace sami na každém počítači, který to vyžaduje.

Místo toho můžete použít instalační příkaz npm a nainstalovat publikovaný modul npm.

Při publikování modulu NPM je třeba dodržovat následující kroky

Krok 1) Vytvořte si úložiště na GitHubu (online nástroj pro správu úložiště kódu). Může být použit k hostování vašich úložišť kódu.

Krok 2 ) Musíte říct místní instalaci NPM o tom, kdo jste. Což znamená, že musíme npm říct, kdo je autorem tohoto modulu, jaké je ID e-mailu a jakákoli adresa URL společnosti, která je k dispozici a která musí být přidružena k tomuto ID. Po zveřejnění budou všechny tyto podrobnosti přidány do vašeho modulu npm.

Níže uvedené příkazy nastavují jméno, e-mail a URL autora modulu npm.

npm set init.author.name "Guru99."

npm set init.author.email " Tato e-mailová adresa je chráněna před spamboty. Pro její zobrazení potřebujete mít povolen JavaScript."

npm set init.author.url http://Guru99.com

Krok 3) Dalším krokem je přihlášení do npm pomocí přihlašovacích údajů uvedených v posledním kroku. Chcete-li se přihlásit, musíte použít níže uvedený příkaz

npm login 

Krok 4) Inicializace balíčku - Dalším krokem je inicializace balíčku a vytvoření souboru package.json. Toho lze dosáhnout vydáním níže uvedeného příkazu

npm init

Po zadání výše uvedeného příkazu budete vyzváni k zadání několika otázek. Nejdůležitější z nich je číslo verze vašeho modulu.

Krok 5) Publikovat na GitHub - Dalším krokem je publikování zdrojových souborů na GitHub. Toho lze dosáhnout spuštěním níže uvedených příkazů.

git add.git commit -m "Initial release"git tag v0.0.1git push origin master --tags

Krok 6) Publikování modulu - Posledním bitem je publikování modulu do registru npm. To se provádí pomocí níže uvedeného příkazu.

npm publish

Správa balíčků třetích stran s npm

Jak jsme viděli, „správce balíčků uzlů“ má schopnost spravovat moduly, které jsou vyžadovány aplikacemi Node.js.

Podívejme se na některé z funkcí dostupných ve správci balíků uzlů pro správu modulů

  1. Instalace balíčků v globálním režimu - Moduly lze instalovat na globální úrovni, což v podstatě znamená, že tyto moduly budou k dispozici pro všechny projekty Node.js na místním počítači. Následující příklad ukazuje, jak nainstalovat „expresní modul“ s globální volbou.

    npm install express -global

    Globální možnost ve výše uvedeném prohlášení je to, co umožňuje instalaci modulů na globální úrovni.

  2. Seznam všech globálních balíčků nainstalovaných na místním počítači. To lze provést spuštěním níže uvedeného příkazu v příkazovém řádku

    seznam NPM - globální

    Níže je uveden výstup, který se zobrazí, pokud jste ve svém systému dříve nainstalovali „expresní modul“.

    Zde vidíte různé moduly nainstalované v místním počítači.

  1. Instalace konkrétní verze balíčku - Někdy může existovat požadavek na instalaci pouze konkrétní verze balíčku. Jakmile znáte název balíčku a příslušnou verzi, kterou je třeba nainstalovat, můžete k instalaci konkrétní verze použít příkaz npm install.

    Následující příklad ukazuje, jak nainstalovat modul s názvem podtržítko s konkrétní verzí 1.7.0

    NPM nainstalovat [email protected]

  2. Aktualizace verze balíčku - Někdy můžete mít v systému starší verzi balíčku a možná budete chtít provést aktualizaci na nejnovější verzi dostupnou na trhu. K tomu lze použít příkaz npm update. Následující příklad ukazuje, jak aktualizovat balíček podtržítka na nejnovější verzi

    NPM aktualizovat podtržítko

  3. Hledání konkrétního balíčku - Chcete-li vyhledat, zda je konkrétní verze k dispozici v místním systému, můžete použít vyhledávací příkaz npm. Následující příklad zkontroluje, zda je modul Express nainstalován na místním počítači nebo ne.

    NPM vyhledávání Express

  4. Odinstalování balíčku - Stejný balíček, ve kterém můžete nainstalovat balíček, můžete také odinstalovat. Odinstalace balíčku se provádí pomocí odinstalačního příkazu npm. Níže uvedený příklad ukazuje, jak odinstalovat expresní modul

    npm uninstall express

Co je soubor package.json

Soubor „package.json“ slouží k uchovávání metadat o konkrétním projektu . Tyto informace poskytují správci balíků uzlů potřebné informace k pochopení toho, jak by měl být projekt zpracován spolu s jeho závislostmi.

Soubory package.json obsahují informace, jako je popis projektu, verze projektu v konkrétní distribuci, licenční informace a konfigurační data.

Soubor package.json je obvykle umístěn v kořenovém adresáři projektu Node.js.

Vezměme si příklad toho, jak vypadá struktura modulu, když je nainstalován pomocí npm.

Níže uvedený snímek ukazuje obsah souboru expresního modulu, pokud je zahrnut do vašeho projektu Node.js. Ze snímku můžete vidět soubor package.json ve složce express.

Pokud otevřete soubor package.json, uvidíte v něm spoustu informací.

Níže je snímek části souboru. Express@~4.13.1 zmiňuje číslo verze výslovného modulu používán.

souhrn

  • Modul v Node.js je logické zapouzdření kódu v jedné jednotce. Díky oddělení do modulů je kód lépe spravovatelný a udržovatelný pro budoucí účely
  • Na trhu je k dispozici mnoho modulů, které lze v rámci Node.js použít, například express, underscore, MongoDB atd.
  • Správce balíků uzlů (npm) se používá ke stahování a instalaci modulů, které lze poté použít v aplikaci Node.js.
  • Lze vytvořit vlastní moduly NPM, rozšířit tyto moduly a také tyto moduly publikovat.
  • Správce balíků uzlů má kompletní sadu příkazů pro správu modulů npm v místním systému, jako je instalace, odinstalace, vyhledávání atd.
  • Soubor package.json se používá k uložení všech informací o metadatech modulu npm.