Rumah >hujung hadapan web >tutorial js >Pengenalan terperinci kepada pakej Node.js_node.js
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.
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:
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