


Analisis kaedah penggunaan kod berasaskan modul dan pakej Node.js_node.js
Peraturan resolusi laluan modul
Pengaturcara C yang berpengalaman bermula dengan fail make apabila menulis program baharu. Begitu juga, sebelum menggunakan NodeJS untuk menulis program, untuk mendapatkan permulaan yang baik, anda perlu terlebih dahulu menyediakan struktur direktori dan kaedah penggunaan kod, sama seperti membina perancah dahulu semasa membaiki rumah. Bab ini akan memperkenalkan pelbagai ilmu berkaitan.
Peraturan peleraian laluan modul
Kita sudah tahu bahawa fungsi require menyokong laluan mutlak bermula dengan garis miring (/) atau huruf pemacu (C:), dan juga menyokong laluan relatif bermula dengan ./. Walau bagaimanapun, kedua-dua laluan ini mewujudkan hubungan gandingan yang kuat antara modul Setelah lokasi penyimpanan fail modul perlu diubah, kod modul lain yang menggunakan modul ini juga perlu dilaraskan dengan sewajarnya, yang menjadi masalah untuk seluruh badan. . Oleh itu, fungsi memerlukan menyokong bentuk laluan ketiga, ditulis sama dengan foo/bar, dan menghuraikan laluan mengikut peraturan berikut secara bergilir-gilir sehingga lokasi modul ditemui.
Modul terbina dalam
Jika nama yang dihantar kepada fungsi memerlukan ialah nama modul terbina dalam NodeJS, analisis laluan tidak akan dilakukan dan objek modul dalaman yang dieksport akan dikembalikan terus, seperti require('fs').
direktori modul_node
NodeJS mentakrifkan direktori node_modules khas untuk menyimpan modul. Sebagai contoh, laluan mutlak modul ialah /home/user/hello.js Apabila kaedah require('foo/bar') digunakan untuk memuatkan modul dalam modul, NodeJS akan cuba menggunakan laluan berikut dalam urutan. .
/home/user/node_modules/foo/bar /home/node_modules/foo/bar /node_modules/foo/bar
NODE_PATH pembolehubah persekitaran
Sama seperti pembolehubah persekitaran PATH, NodeJS membenarkan menentukan laluan carian modul tambahan melalui pembolehubah persekitaran NODE_PATH. Pembolehubah persekitaran NODE_PATH mengandungi satu atau lebih laluan direktori Laluan dipisahkan oleh : di bawah Linux dan ; Sebagai contoh, pembolehubah persekitaran NODE_PATH berikut ditakrifkan:
NODE_PATH=/home/user/lib:/home/lib
Apabila menggunakan require('foo/bar') untuk memuatkan modul, NodeJS mencuba laluan berikut mengikut turutan.
/home/user/lib/foo/bar /home/lib/foo/bar
Pek
Kita sudah tahu bahawa unit asas modul JS ialah satu fail JS, tetapi modul yang lebih kompleks selalunya terdiri daripada berbilang sub-modul. Untuk memudahkan pengurusan dan penggunaan, kita boleh memanggil modul besar yang terdiri daripada berbilang sub-modul sebagai pakej, dan meletakkan semua sub-modul dalam direktori yang sama.
Di antara semua sub-modul yang membentuk pakej, perlu ada modul kemasukan, dan objek eksport modul kemasukan digunakan sebagai objek eksport pakej. Sebagai contoh, terdapat struktur direktori berikut.
- /home/user/lib/ - cat/ head.js body.js main.js
Direktori kucing mentakrifkan pakej, yang mengandungi 3 sub-modul. main.js berfungsi sebagai modul kemasukan dan kandungannya adalah seperti berikut:
var head = require('./head'); var body = require('./body'); exports.create = function (name) { return { name: name, head: head.create(), body: body.create() }; };
Apabila menggunakan pakej dalam modul lain, anda perlu memuatkan modul kemasukan pakej tersebut. Meneruskan contoh di atas, menggunakan require('/home/user/lib/cat/main') boleh mencapai matlamat, tetapi nampaknya bukan idea yang baik jika nama modul kemasukan muncul dalam laluan. Oleh itu, kita perlu melakukan sedikit kerja tambahan untuk menjadikan pakej berkelakuan lebih seperti satu modul.
index.js
Apabila nama fail modul ialah index.js, semasa memuatkan modul, anda boleh menggunakan laluan direktori di mana modul terletak dan bukannya laluan fail modul Oleh itu, mengikut contoh di atas, dua yang berikut pernyataan adalah setara.
var cat = require('/home/user/lib/cat'); var cat = require('/home/user/lib/cat/index');
Selepas memproses dengan cara ini, anda hanya perlu menghantar laluan direktori pakej ke fungsi yang diperlukan. Rasanya keseluruhan direktori digunakan sebagai satu modul, memberikan rasa yang lebih holistik.
pakej.json
Jika anda ingin menyesuaikan nama fail dan lokasi storan modul kemasukan, anda perlu memasukkan fail package.json dalam direktori pakej dan nyatakan laluan modul kemasukan di dalamnya. Modul kucing dalam contoh di atas boleh difaktorkan semula seperti berikut.
- /home/user/lib/ - cat/ + doc/ - lib/ head.js body.js main.js + tests/ package.json
Kandungan package.json adalah seperti berikut.
{ "name": "cat", "main": "./lib/main.js" }
Dengan cara ini, anda juga boleh menggunakan require('/home/user/lib/cat') untuk memuatkan modul. NodeJS akan mencari lokasi modul kemasukan berdasarkan package.json dalam direktori pakej.

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas


![Modul pengembangan WLAN telah berhenti [fix]](https://img.php.cn/upload/article/000/465/014/170832352052603.gif?x-oss-process=image/resize,m_fill,h_207,w_330)
Jika terdapat masalah dengan modul pengembangan WLAN pada komputer Windows anda, ia mungkin menyebabkan anda terputus sambungan daripada Internet. Keadaan ini sering mengecewakan, tetapi mujurlah, artikel ini menyediakan beberapa cadangan mudah yang boleh membantu anda menyelesaikan masalah ini dan membolehkan sambungan wayarles anda berfungsi dengan baik semula. Betulkan Modul Kebolehlanjutan WLAN Telah Berhenti Jika Modul Kebolehlanjutan WLAN telah berhenti berfungsi pada komputer Windows anda, ikuti cadangan ini untuk membetulkannya: Jalankan Penyelesai Masalah Rangkaian dan Internet untuk melumpuhkan dan mendayakan semula sambungan rangkaian wayarles Mulakan semula Perkhidmatan Konfigurasi Auto WLAN Ubah Suai Pilihan Kuasa Ubah suai Tetapan Kuasa Lanjutan Pasang Semula Pemacu Penyesuai Rangkaian Jalankan Beberapa Perintah Rangkaian Sekarang, mari kita lihat secara terperinci

Artikel ini memperincikan kaedah untuk menyelesaikan ID10000 peristiwa, yang menunjukkan bahawa modul pengembangan LAN Wayarles tidak boleh dimulakan. Ralat ini mungkin muncul dalam log peristiwa Windows 11/10 PC. Modul kebolehlanjutan WLAN ialah komponen Windows yang membenarkan vendor perkakasan bebas (IHV) dan vendor perisian bebas (ISV) untuk menyediakan pengguna dengan ciri dan fungsi rangkaian wayarles tersuai. Ia memanjangkan keupayaan komponen rangkaian Windows asli dengan menambahkan fungsi lalai Windows. Modul kebolehlanjutan WLAN dimulakan sebagai sebahagian daripada permulaan apabila sistem pengendalian memuatkan komponen rangkaian. Jika Modul Pengembangan LAN Wayarles menghadapi masalah dan tidak boleh dimulakan, anda mungkin melihat mesej ralat dalam log dalam Pemapar Acara.

Perkhidmatan Node yang dibina berdasarkan bukan sekatan dan dipacu peristiwa mempunyai kelebihan penggunaan memori yang rendah dan sangat sesuai untuk mengendalikan permintaan rangkaian besar-besaran. Di bawah premis permintaan besar-besaran, isu yang berkaitan dengan "kawalan memori" perlu dipertimbangkan. 1. Mekanisme kutipan sampah V8 dan had ingatan Js dikawal oleh mesin kutipan sampah

Modul fail ialah enkapsulasi operasi fail asas, seperti membaca/menulis/membuka/menutup/memadam fail, dsb. Ciri terbesar modul fail ialah semua kaedah menyediakan dua versi **segerak** dan ** asynchronous**, dengan Kaedah dengan akhiran penyegerakan adalah semua kaedah penyegerakan, dan kaedah yang tidak semuanya adalah kaedah heterogen.

Prakata Artikel ini terus memperkenalkan modul koleksi Python Kali ini terutamanya memperkenalkan tupel yang dinamakan di dalamnya, iaitu penggunaan namedtuple. Tanpa berlengah lagi, mari kita mulakan – ingat untuk suka, ikut dan ke hadapan~ ^_^Mencipta tupel bernama Kelas tuple bernamaTuples dalam koleksi Python memberi makna kepada setiap kedudukan dalam tupel dan meningkatkan kebolehbacaan kod Seksual dan deskriptif. Ia boleh digunakan di mana-mana tupel biasa digunakan, dan menambah keupayaan untuk mengakses medan mengikut nama dan bukannya indeks kedudukan. Ia datang daripada koleksi modul terbina dalam Python. Sintaks umum yang digunakan ialah: import koleksi XxNamedT

Gelung peristiwa ialah bahagian asas Node.js dan mendayakan pengaturcaraan tak segerak dengan memastikan bahawa utas utama tidak disekat Memahami gelung peristiwa adalah penting untuk membina aplikasi yang cekap. Artikel berikut akan memberi anda pemahaman yang mendalam tentang gelung acara dalam Node.

Hello, nama saya somenzz, awak boleh panggil saya Abang Zheng. Import Python adalah sangat intuitif, tetapi walaupun begitu, kadangkala anda akan mendapati bahawa walaupun pakej itu ada, kami masih akan menemui ModuleNotFoundError Laluan relatif jelas sangat betul, tetapi ralat ImportError:attemptedrelativeimportwithnoknownparentpackage mengimport modul dalam direktori yang sama dan. yang berbeza. Modul direktori adalah berbeza sama sekali. Artikel ini membantu anda mengendalikan import dengan mudah dengan menganalisis beberapa masalah yang sering dihadapi apabila menggunakan import, anda boleh membuat atribut dengan mudah.

Pada mulanya, JS hanya berjalan pada bahagian penyemak imbas Mudah untuk memproses rentetan berkod Unikod, tetapi sukar untuk memproses rentetan binari dan bukan berkod Unikod. Dan binari ialah format data peringkat terendah komputer, video/audio/program/pakej rangkaian
