[[oktatas:web:nodejs|< Node.js]] ====== Npm ====== * **Szerző:** Sallai András * Copyright (c) 2015, Sallai András * Szerkesztve: 2015, 2019, 2021, 2024 * Licenc: [[https://creativecommons.org/licenses/by-sa/4.0/|CC BY-SA 4.0]] * Web: https://szit.hu ===== Az npmről ===== Az npm a Node.js csomagkezelője. Segítségével újabb csomagok telepíthetők. ===== Telepítés ===== ==== Windows ==== A Node.js tartalmazza az npm programot, így nincs teendő. Ellenőrizzük: npm --version ==== Debian csomagból ==== apt install npm ==== Legújabb telepítése ==== Ha nincs telepítve a curl, telepítsük: apt install curl curl -fsSL https://deb.nodesource.com/setup_16.x | bash - apt install -y nodejs Ha így telepítjük a Node.js csomagot, az npm parancsot nem szükséges külön telepíteni. node --version npm --version ===== Segítség ===== npm --help ===== Csomagok tárolója ===== A csomagtárolóhoz tartozik egy webhely is: * https://npmjs.com A csomagok kereshetők, áttekinthetők. ==== Gyakorlat ==== Látogassuk meg a weboldalt, keressünk titkosító csomagokat. Használjuk kereséshez a crypto szót. ===== A telepített csomagok megjelenítése ===== npm list Ha még egyetlen csomagot sem telepítettünk, akkor kimenet ehhez hasonló lehet: /root └── (empty) Aliasok: npm ls npm la npm ll ===== Csomagok kezelése ===== ==== Telepítés ==== A példa kedvéért telepítsük a generator-angular csomagot: npm install generator-angular A csomag alapértelmezetten helyben telepszik. A telepített csomag neve bekerül a package.json fájlba, a --save hatására, de ez az alapértelmezés: npm install express --save Ha szeretnénk tiltani: npm install express --no-save ==== Listázás ==== Telepített csomagok listázása: npm list Globálisan telepített csomagok listázása: npm -g list Kimenet csökkentése, mélység csak egy szintig: npm list --depth 1 ==== Telepítés helye ==== Hova telepszenek a csomagok: npm root list Hova telepszenek a globális fájlok: npm root list -g ==== Eltávolítás ==== npm uninstall express vagy npm remove express ==== Gyakorlás ==== * 1. * Készítsen Node.js projektet. * Telepítse az ini nevű csomagot. * Írjon egy egyszerű példaprogramot ami ini fájlt olvas vagy ír. * 2. * Készítsen Node.js projektet. * Telepítse a lodash nevű csomagot. * Készítsen programot ami használja a programozói könyvtárat: const _ = require('lodash'); console.log(_.chunk(['a', 'b', 'c', 'd'], 2)); * Futtassa a programot a "node src" paranccsal. * 3. * Készítsen Node.js projektet. * Telepítse az moment nevű csomagot. * Készítsen programot ami használja a programozói könyvtárat: const moment = require('moment'); console.log(moment().format('MMMM Do YYYY, h:mm:ss a')); * 4. * Készítsen Node.js projektet. * Telepítse az uuid nevű csomagot. * Készítsen programot ami használja a programozói könyvtárat: const { v4: uuidv4 } = require('uuid'); console.log(uuidv4()); * 5. * Készítsen Node.js projektet. * Telepítse az uuid nevű csomagot. * Készítsen programot ami használja a programozói könyvtárat: require('dotenv').config(); console.log(process.env.MY_SECRET); * 6. * Készítsen Node.js projektet. * Telepítse az axios nevű csomagot. * Készítsen programot ami használja a programozói könyvtárat: const axios = require('axios'); axios.get('https://api.github.com/users/oktat') .then(response => { console.log(response.data); }) .catch(error => { console.log(error); }); * 7. * Készítsen Node.js projektet. * Telepítse az is-odd nevű csomagot. * Készítsen programot ami használja a programozói könyvtárat. * Mutassa be a csomag használatát. ===== npx ===== Az npx az npm bináris csomagok futtató parancsa. Az aktuális projektbe telepített parancsok az npx paranccsal futtathatók. Például: npx react-native Ha a csomag tartalmaz futtatható parancsot is, akkor az a node_modules/.bin/ könyvtárba telepszik. Lássuk például a cowsay csomagot. Telepítsük: npm install cowsay Ellenőrizzük a node_modules/.bin/ könyvtár tartalmát. Láthatjuk, hogy kaptunk két parancsot: * cowsay * cowthink Futtassuk például a cowsay parancsot: npx cowsay Egy segítő szöveget találunk, amely leírja hogyan kell használni a parancsot. Adjunk valami szöveget a cowsay parancs után. Például: npx cowsay Helló ==== Gyakorlás ==== * 1. * Telepítse a **network-address** nevű csomagot. * Derítse ki, milyen parancsot kapott, és hogyan használhatja azt az npx parancsot. * 2. * Telepítse a **figlet** csomagot. * Derítse ki mire használható. * Mutassa be a használatát. * 3. * Telepítse a **eslint** csomagot. * Derítse ki mire használható. * Mutassa be a használatát. * 4. * Telepítse a **serve** csomagot. * Derítse ki mire használható. * Mutassa be a használatát. ===== Proxy ===== Ha az Internet eléréshez proxy-t kell használni: Példa: npm install --proxy http://192.168.10.2:3128 --global lite-server ===== Forrás ===== * https://github.com/nodesource/distributions/blob/master/README.md#debinstall (2019)