Lainnya seperti modul pihak ketiga atau modul lokal yang dipasang melalui NPM, setiap modul akan mengekspos API publik. Sehingga pengembang dapat mengimpor. menyukai
Salinan kode adalah sebagai berikut:
var mod = membutuhkan ('module_name')
Setelah kalimat ini dieksekusi, modul atau modul bawaan yang diinstal melalui NPM akan dimuat di dalam simpul. Fungsi yang membutuhkan mengembalikan objek yang API yang diekspos dapat berupa fungsi, objek, atau atribut seperti fungsi, array, atau bahkan objek tipe JS tipe sewenang -wenang.
Berikut adalah mekanisme pemuatan dan caching modul node
1) Muat modul bawaan (modul inti)
2) Muat modul file (modul file)
3) Muat modul direktori file (modul folder)
4) Muat modul di node_modules
5) Modul yang dimuat secara otomatis
1. Muat modul bawaan
Modul bawaan Node dikompilasi ke dalam bentuk biner, dan namanya secara langsung digunakan sebagai pengganti jalur file saat direferensikan. Ketika modul pihak ketiga dan modul bawaan memiliki nama yang sama, modul bawaan akan mengesampingkan modul pihak ketiga dengan nama yang sama. Karena itu, saat penamaan, Anda harus berhati-hati untuk tidak memiliki nama yang sama dengan modul bawaan. Jika Anda mendapatkan modul HTTP
Salinan kode adalah sebagai berikut:
var http = membutuhkan ('http')
HTTP yang dikembalikan adalah modul bawaan yang mengimplementasikan simpul fungsi HTTP.
2. Muat modul file
Jalur absolut
Salinan kode adalah sebagai berikut:
var mymod = membutuhkan ('/home/base/my_mod')
atau jalur relatif
Salinan kode adalah sebagai berikut:
var mymod = membutuhkan ('./ my_mod')
Perhatikan bahwa ekstensi ".js" diabaikan di sini, dan berikut ini adalah rekan
Salinan kode adalah sebagai berikut:
var mymod = membutuhkan ('./ my_mod')
var mymod = membutuhkan ('./ my_mod.js')
3. Muat modul direktori file
Anda dapat secara langsung memerlukan direktori, dengan asumsi bahwa ada direktori bernama folder, seperti
Salinan kode adalah sebagai berikut:
var mymod = membutuhkan ('./ folder')
Pada titik ini, Node akan mencari seluruh direktori folder, Node akan mengasumsikan bahwa foldernya adalah paket dan mencoba menemukan paket file definisi paket.json. Jika direktori folder tidak berisi file package.json, Node akan mengasumsikan bahwa file utama default adalah index.js, yang berarti bahwa index.js akan dimuat. Jika index.js tidak ada, maka pemuatan akan gagal.
Jika struktur direktori adalah sebagai berikut
package.json didefinisikan sebagai berikut
Salinan kode adalah sebagai berikut:
{
"Nama": "pack",
"Main": "Moda.js"
}
Saat ini membutuhkan ('./ Folder') akan mengembalikan modul Moda.js. Jika package.json tidak ada, modul index.js akan dikembalikan. Jika index.js tidak ada, pengecualian beban akan terjadi.
4. Muat modul di node_modules
Jika nama modul bukan jalur atau modul bawaan, Node akan mencoba mencari di folder Node_Modules dari direktori saat ini. Jika node_modules dalam direktori saat ini tidak ditemukan, node akan mencari dari node_modules di direktori induk, dan kemudian secara rekursif berlanjut hingga direktori root.
Jangan khawatir, perintah NPM memungkinkan kami untuk menginstal, menghapus instalan, dan memperbarui direktori Node_Modules dengan sangat nyaman.
5. Modul yang dimuat secara otomatis
Node untuk modul yang dimuat di-cache tanpa harus mencari kembali setiap saat. Inilah contohnya
Moda.js
Salinan kode adalah sebagai berikut:
Console.log ('Modul Moda Mulai Memuat ...')
ekspor = fungsi () {
console.log ('hai')
}
Console.log ('Modul Moda telah dimuat')
init.js
Salinan kode adalah sebagai berikut:
var mod1 = membutuhkan ('./ moda')
var mod2 = membutuhkan ('./ Moda')
Console.log (mod1 === mod2)
Eksekusi baris perintah:
node init.js
Masukkan sebagai berikut
Dapat dilihat bahwa meskipun diperlukan dua kali, Moda.js masih dieksekusi hanya sekali. MOD1 dan MOD2 adalah sama, yaitu, kedua referensi menunjuk ke objek modul yang sama.