Rumah >hujung hadapan web >tutorial js >Pengenalan terperinci kepada pakej Node.js_node.js

Pengenalan terperinci kepada pakej Node.js_node.js

WBOY
WBOYasal
2016-05-16 16:20:031254semak imbas

Dalam bahasa Node.js, tiada perbezaan penting antara pakej dan modul Pakej adalah abstraksi yang lebih mendalam berdasarkan modul yang merangkumi fungsi bebas dan digunakan untuk menerbitkan, mengemas kini, pengurusan pergantungan dan Melakukan kawalan versi. Node.js melaksanakan mekanisme pakej mengikut spesifikasi CommonJS, dan npm telah dibangunkan untuk menyelesaikan keperluan penerbitan dan pemerolehan pakej.

Pakej Node.js ialah direktori yang mengandungi fail perihalan pakej package.json dalam format JSON. Pakej Node.js pada asasnya mengikut spesifikasi CommonJS, jadi ia mempunyai ciri-ciri berikut:

Ciri pakej yang ditakrifkan oleh spesifikasi CommonJS:

1) Direktori peringkat atas mengandungi fail package.json; 2) Direktori bin menyimpan fail binari; 3) Direktori lib menyimpan fail JavaScript; 4) Direktori dokumen menyimpan dokumen; 5) Direktori ujian menyimpan ujian unit.

Modul dan fail Node.js mempunyai surat-menyurat satu dengan satu Fail bukan sahaja boleh menjadi fail sumber JavaScript atau fail binari, tetapi juga direktori. Pakej yang paling mudah ialah modul direktori.

Pakej Node.js biasanya merupakan koleksi modul, yang menyediakan tahap abstraksi yang lebih tinggi berdasarkan modul, yang setara dengan pustaka fungsi yang menyediakan beberapa antara muka tetap.

Dengan menyesuaikan package.json, kami boleh mencipta pakej yang lebih kompleks, lebih lengkap dan lebih patuh untuk keluaran.

Apabila Node.js memanggil pakej, ia akan menyemak medan utama fail package.json dalam pakej dan menggunakannya sebagai modul antara muka pakej Jika medan utama fail package.json tidak wujud, maka Node.js akan mencuba Cari index.js atau index.node sebagai antara muka pakej.


Fail package.json ialah fail yang digunakan oleh spesifikasi CommonJS untuk menerangkan pakej Fail package.json yang mematuhi spesifikasi sepenuhnya harus mengandungi medan berikut:

1) nama: nama pakej. Nama pakej adalah unik dan terdiri daripada huruf kecil, nombor dan garis bawah serta tidak boleh mengandungi ruang.

2) penerangan: penerangan pakej. Beri penerangan ringkas tentang pakej tersebut.

3) versi: nombor versi. Rentetan versi yang memenuhi spesifikasi "Pengenalan Versi Semantik".

4) kata kunci: susunan kata kunci, biasanya digunakan untuk carian.
5) penyelenggara: pelbagai penyelenggara. Setiap elemen mengandungi medan nama, e-mel (pilihan), web (pilihan).
6) penyumbang: pelbagai penyumbang. Formatnya sama dengan tatasusunan penyelenggara. Pengarang pakej hendaklah menjadi elemen pertama tatasusunan penyumbang.
7) Pepijat: Alamat untuk menghantar pepijat, yang boleh menjadi tapak web atau alamat e-mel.
8) lesen: susunan lesen. Setiap elemen hendaklah mengandungi medan jenis (nama lesen) dan url (pautan alamat ke teks lesen).
9) repositori: pelbagai alamat pengehosan gudang. Setiap elemen mesti mengandungi medan jenis (jenis gudang, seperti Git), url (alamat gudang) dan laluan (laluan berbanding gudang, pilihan).
10) dependencies: dependencies pakej. Merupakan tatasusunan bersekutu yang terdiri daripada nama pakej dan nombor versi.

Nota: Spesifikasi "Pengenalpastian Versi Semantik" ialah satu set spesifikasi penamaan versi yang dicadangkan di luar negara Tujuan asalnya adalah untuk menyelesaikan pelbagai masalah perbandingan saiz versi Ia kini diterima pakai oleh banyak sistem pengurusan pakej.

Berikut ialah contoh package.json yang mematuhi sepenuhnya spesifikasi CommonJS:


Salin kod

Kenyataan:
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