Beberapa waktu yang lalu, kami telah menerbitkan panduan untuk mengelola paket Python menggunakan PIP . Hari ini, kita akan membahas bagaimana mengelola paket NodeJS menggunakan Npm. NPM adalah registri perangkat lunak terbesar yang berisi lebih dari 600.000 paket. Setiap hari, pengembang di seluruh dunia berbagi dan mengunduh paket melalui npm. Dalam panduan ini, saya akan menjelaskan dasar-dasar bekerja dengan npm, seperti menginstal paket (lokal dan global), menginstal versi paket tertentu, memperbarui, menghapus dan mengelola paket NodeJS dan sebagainya.
Memasang NPM
Karena npm ditulis dalam NodeJS, kita perlu menginstal NodeJS untuk menggunakan npm. Untuk menginstal NodeJS pada distribusi Linux yang berbeda, lihat tautan berikut.
- Cara Memasang NodeJS Di Linux
Setelah terinstal, pastikan NodeJS dan NPM telah terinstal dengan benar. Ada beberapa cara untuk melakukannya.
Untuk memeriksa di mana node telah diinstal, jalankan perintah berikut:
$ which node /home/sk/.nvm/versions/node/v9.4.0/bin/node
Periksa versinya:
$ node -v v9.4.0
Masuk ke sesi REPL Node:
$ node > .help .break Sometimes you get stuck, this gets you out .clear Alias for .break .editor Enter editor mode .exit Exit the repl .help Print this help message .load Load JS from a file into the REPL session .save Save all evaluated commands in this REPL session to a file > .exit
Periksa di mana npm diinstal:
$ which npm /home/sk/.nvm/versions/node/v9.4.0/bin/npm
Dan versinya:
$ npm -v 5.6.0
Besar! Node dan NPM telah diinstal dan berfungsi! Seperti yang mungkin Anda perhatikan, saya telah menginstal NodeJS dan NPM di direktori $HOME saya untuk menghindari masalah izin saat menginstal modul secara global. Ini adalah metode yang direkomendasikan oleh tim NodeJS.
Baiklah, mari kita lihat bagaimana mengelola modul (atau paket) NodeJS menggunakan npm.
Mengelola Paket NodeJS Menggunakan Npm
Memasang modul NodeJS
Modul NodeJS dapat diinstal secara lokal atau global (seluruh sistem). Sekarang saya akan menunjukkan cara menginstal paket secara lokal.
Instal paket secara lokal
Untuk mengelola paket secara lokal, kami biasanya menggunakan package.json berkas.
Pertama, mari kita buat direktori proyek kita.
$ mkdir demo
$ cd demo
Buat file package.json di dalam direktori proyek Anda. Untuk melakukannya, jalankan:
$ npm init
Masukkan detail paket Anda seperti nama, versi, penulis, halaman github, dll., atau cukup tekan tombol ENTER untuk menerima nilai default dan ketik YA untuk mengonfirmasi.
This utility will walk you through creating a package.json file. It only covers the most common items, and tries to guess sensible defaults. See `npm help json` for definitive documentation on these fields and exactly what they do. Use `npm install <pkg>` afterwards to install a package and save it as a dependency in the package.json file. Press ^C at any time to quit. package name: (demo) version: (1.0.0) description: demo nodejs app entry point: (index.js) test command: git repository: keywords: author: license: (ISC) About to write to /home/sk/demo/package.json: { "name": "demo", "version": "1.0.0", "description": "demo nodejs app", "main": "index.js", "scripts": { "test": "echo \"Error: no test specified\" && exit 1" }, "author": "", "license": "ISC" } Is this ok? (yes) yes
Perintah di atas menginisialisasi proyek Anda dan membuat file package.json.
Anda juga dapat melakukan ini secara non-interaktif menggunakan perintah:
$ npm init --y
Ini akan membuat file package.json dengan cepat dengan nilai default tanpa interaksi pengguna.
Sekarang mari kita instal paket bernama commander .
$ npm install commander
Contoh keluaran:
npm notice created a lockfile as package-lock.json. You should commit this file. npm WARN [email protected] No repository field. + [email protected] added 1 package in 2.519s
Ini akan membuat direktori bernama "node_modules" (jika belum ada) di direktori root proyek dan unduh paket di dalamnya.
Mari kita periksa file package.json.
$ cat package.json { "name": "demo", "version": "1.0.0", "description": "demo nodejs app", "main": "index.js", "scripts": { "test": "echo \"Error: no test specified\" && exit 1" }, "author": "", "license": "ISC", "dependencies": { "commander": "^2.13.0" } }
Anda akan melihat dependensi telah ditambahkan. Tanda sisipan (^ ) simbol di depan nomor versi menunjukkan bahwa saat menginstal, npm akan menarik versi tertinggi dari paket yang dapat ditemukan.
$ ls node_modules/ commander
Keuntungan dari file package.json adalah jika Anda memiliki file package.json di direktori proyek Anda, Anda cukup mengetikkan "npm install", kemudian npm akan melihat dependensi yang tercantum dalam file dan mengunduh semuanya. Anda bahkan dapat membagikannya dengan pengembang lain atau memasukkannya ke dalam repositori GitHub Anda, jadi ketika mereka mengetik "npm install", mereka akan mendapatkan semua paket yang sama dengan yang Anda miliki.
Anda mungkin juga melihat file json lain bernama package-lock.json . File ini memastikan bahwa dependensi tetap sama di semua sistem tempat proyek diinstal.
Untuk menggunakan paket yang diinstal dalam program Anda, buat file index.js (atau nama apa pun yang Anda pilih) di direktori proyek dengan kode aktual, lalu jalankan menggunakan perintah:
$ node index.js
Instal paket secara global
Jika Anda ingin menggunakan sebuah paket sebagai alat baris perintah, maka lebih baik menginstalnya secara global. Dengan cara ini, ini berfungsi tidak peduli direktori mana yang merupakan direktori Anda saat ini.
$ npm install async -g + [email protected] added 2 packages in 4.695s
Atau,
$ npm install async --global
Untuk menginstal versi paket tertentu, kami melakukan:
$ npm install [email protected] --global
Memperbarui modul NodeJS
Untuk memperbarui paket lokal, buka direktori proyek tempat package.json berada dan jalankan:
$ npm update
Kemudian, jalankan perintah berikut untuk memastikan semua paket telah diperbarui.
$ npm outdated
Jika tidak ada pembaruan, maka tidak menghasilkan apa-apa.
Untuk mengetahui paket global mana yang perlu diperbarui, jalankan:
$ npm outdated -g --depth=0
Jika tidak ada output, maka semua paket diperbarui.
Untuk memperbarui satu paket global, jalankan:
$ npm update -g <package-name>
Untuk memperbarui semua paket global, jalankan:
$ npm update -g <package>
Mencantumkan modul NodeJS
Untuk membuat daftar paket lokal, buka direktori proyek dan jalankan:
$ npm list [email protected] /home/sk/demo └── [email protected]
Seperti yang Anda lihat, saya telah menginstal paket "commander" dalam mode lokal.
Untuk membuat daftar paket global, jalankan perintah ini dari lokasi mana pun:
$ npm list -g
Contoh keluaran:
/home/sk/.nvm/versions/node/v9.4.0/lib ├─┬ [email protected] │ └── [email protected] └─┬ [email protected] ├── [email protected] ├── [email protected] ├── [email protected] ├── [email protected] ├── [email protected] ├── [email protected] [...]
Perintah ini akan mencantumkan semua modul dan dependensinya.
Untuk mendaftar hanya modul tingkat atas, gunakan --depth=0 pilihan:
$ npm list -g --depth=0 /home/sk/.nvm/versions/node/v9.4.0/lib ├── [email protected] └── [email protected]
Mencari modul NodeJS
Untuk mencari modul, gunakan perintah "npm search":
npm search <search-string>
Contoh:
$ npm search request
Perintah ini akan menampilkan semua modul yang berisi string pencarian "permintaan".
Menghapus modul NodeJS
Untuk menghapus paket lokal, buka direktori proyek dan jalankan perintah berikut untuk menghapus paket dari node_modules Anda direktori:
$ npm uninstall <package-name>
Untuk menghapusnya dari dependensi di package.json file, gunakan simpan tandai seperti di bawah ini:
$ npm uninstall --save <package-name>
Untuk menghapus paket yang diinstal secara global, jalankan:
$ npm uninstall -g <package>
Membersihkan cache NPM
Secara default, NPM menyimpan salinan paket yang diinstal di folder cache bernama npm di direktori $HOME Anda saat menginstalnya. Jadi, Anda dapat menginstalnya lain kali tanpa harus mengunduh lagi.
Untuk melihat modul yang di-cache:
$ ls ~/.npm
Folder cache dibanjiri dengan semua paket lama dari waktu ke waktu. Lebih baik membersihkan cache dari waktu ke waktu.
Mulai [dilindungi email], cache npm sembuh sendiri dari masalah korupsi dan data yang diekstraksi dari cache dijamin valid. Jika Anda ingin memastikan semuanya konsisten, jalankan:
$ npm cache verify
Untuk menghapus seluruh cache, jalankan:
$ npm cache clean --force
Melihat konfigurasi NPM
Untuk melihat konfigurasi npm, ketik:
$ npm config list
Atau,
$ npm config ls
Contoh keluaran:
; cli configs metrics-registry = "https://registry.npmjs.org/" scope = "" user-agent = "npm/5.6.0 node/v9.4.0 linux x64" ; node bin location = /home/sk/.nvm/versions/node/v9.4.0/bin/node ; cwd = /home/sk ; HOME = /home/sk ; "npm config ls -l" to show all defaults.
Untuk menampilkan lokasi global saat ini:
$ npm config get prefix /home/sk/.nvm/versions/node/v9.4.0
Dan, itu saja untuk saat ini. Apa yang baru saja kita bahas di sini hanyalah dasar-dasarnya. NPM adalah topik yang luas. Untuk detail selengkapnya, buka Memulai NPM panduan.