Apakah prinsip carian modul nodejs?

WBOY
Lepaskan: 2023-05-14 12:01:37
asal
464 orang telah melayarinya

Sebagai alat pembangunan bahagian belakang yang popular, sistem modul Node.js merupakan faktor penting dalam kejayaannya. Sistem modul Node.js mempunyai prinsip yang mudah tetapi berkuasa, iaitu membenarkan setiap fail dan modul memfokuskan pada satu perkara, dan kemudian menggunakannya apabila diperlukan.

Sistem modul Node.js bergantung pada eksport dan import modul. Setiap fail .js ialah modul bebas dan boleh mengeksport salah satu antara mukanya untuk digunakan oleh modul lain.

Apabila kami menggunakan require('module-name') untuk mengimport nama modul, Node.js menggunakan strategi berikut untuk mencarinya:

1 Cari modul terbina dalam

Node.js memuatkan pelbagai modul terbina dalam pada permulaan, seperti fs, http, dsb. Apabila anda cuba mengimport modul menggunakan require("module-name") , modul tersebut mula-mula dicari antara modul terbina dalam.

Jika modul terbina dalam ditemui dan nama modul serta laluan sepadan, Node.js akan mengembalikan modul tersebut serta-merta. Hasilnya, Node.js membolehkan pembangun menggunakan modul terbina dalam dengan cepat dan cekap.

2. Cari modul pihak ketiga

Jika Node.js tidak menemui modul terbina dalam yang sepadan, permintaan akan dihantar kepada penyelesai modul Node.js untuk mencarinya.

Dalam Node.js, setiap modul tinggal dalam failnya sendiri. Import laluan relatif bermakna modul mungkin perlu merujuk fail lain dalam sistem fail.

Apabila penghurai menemui import laluan relatif, ia akan menggunakan laluan yang digunakan untuk menghuraikan fail yang diimport dan mencari fail yang sepadan dalam sistem fail.

Node.js mula-mula akan mencari modul dalam direktori di mana fail semasa berada, dan kemudian melelang melalui direktori induk fail untuk mencari modul. Proses ini akan berulang sehingga modul ditemui atau Node.js mencapai akar sistem fail.

Jika penghurai menemui fail yang sepadan dengan laluan import relatif, kembalikan modul kepada memerlukan().

Jika penghurai tidak menjumpai fail atau menemui fail yang tidak sah, require() akan menimbulkan Ralat.

3. Cari modul Node.js

Jika Node.js sedang mencari fail, tetapi modul lain cuba memintanya mencari modul Node.js, Node.js akan mengganggu fail itu. Cari proses dan mula mencari modul Node.js.

Semua modul teras dalam Node.js ditulis menggunakan fail .js dan terletak dalam direktori khusus pemasangan Node.js anda. Apabila anda cuba mengimport nama modul Node.js terbina dalam dalam require(), Node.js akan membaca modul dan mengembalikannya, mengabaikan sebarang fail atau direktori yang sepadan dengannya.

4. Cari modul bernama global

Terdapat beberapa modul global dalam Node.js, seperti Penampan dan proses. Modul ini tidak boleh diimport menggunakan require() dalam apl anda kerana Node.js tidak merentasi sistem fail untuk mencarinya. Mereka sering diakses melalui objek global seperti global.Buffer atau global.process.

Ringkasan

Sistem modul Node.js mempunyai tahap fleksibiliti dan susunan tertentu, yang membolehkan anda menulis modul tertutup sahaja tanpa bimbang kod anda akan bercanggah dengan modul lain. Sistem modul Node.js menggunakan prinsip yang mudah dan jelas: setiap fail dan modul boleh memfokuskan pada satu perkara, dan boleh mengeksport antara muka untuk digunakan oleh modul lain. Memahami mekanik dan susunan carian sistem modul Node.js boleh membantu anda memahami dengan lebih baik sistem modul Node.js dan cara ia berfungsi.

Atas ialah kandungan terperinci Apakah prinsip carian modul nodejs?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!