Saya baru saja mulai menggunakan Grunt.js . Cukup sulit untuk mengatur dan saya pada titik membuat package.json
file.
Setelah tutorial ini , dikatakan ada 3 cara untuk membuat package.json
file.
Yang pertama harus dilakukan npm install grunt --save-dev
Tetapi apa --save-dev
artinya? Saya mencoba mencari tetapi berakhir dengan sia-sia.
Jawaban:
Menurut npm instal dokumen .
Dengan kata lain, ketika Anda menjalankan
npm install
, devDependencies proyek Anda akan diinstal, tetapi devDependencies untuk setiap paket yang bergantung pada aplikasi Anda tidak akan diinstal; lebih lanjut, aplikasi lain yang memiliki aplikasi Anda sebagai dependensi tidak perlu menginstal devDependencies Anda. Modul semacam itu hanya diperlukan ketika mengembangkan aplikasi (mis. Mendengus, mocha dll).Menurut dokumentasi package.json
Sunting: Berusaha memvisualisasikan apa yang
npm install
dilakukan:devDependency TIDAK diinstaldevDependency TIDAK diinstaldevDependency TIDAK diinstalsumber
npm install --dev
bendera?npm install
, dependensi proyek juga akan diinstal. Anda tidak ingin dependensi devDependensi diinstal. Jika Anda ingin mengembangkan paket npm, pilihgit clone xxx
proyek itu, dan jalankannpm install
di dalamnya.npm install
dijalankan di proyek Anda, semua devDependencies di package.json akan diinstal, tetapi jika Anda mengemas proyek Anda sebagai paket npm baru dan mempublikasikannya, ketika orang lain menginstal paket Anda dengan npm install, devDependencies tidak akan diinstal pada sistem mereka. Apakah itu benar? @stanzheng atau Anda dapat menjalankan npm install --produksi untuk menginstal segala sesuatu di package.json kecuali dependensi devAda (setidaknya) dua jenis dependensi paket yang dapat Anda indikasikan di file package.json Anda:
Paket-paket yang diperlukan untuk menggunakan modul Anda terdaftar di bawah properti "dependensi". Dengan menggunakan npm, Anda dapat menambahkan dependensi tersebut ke file package.json Anda dengan cara ini:
Paket-paket yang diperlukan untuk membantu mengembangkan modul Anda terdaftar di bawah properti "devDependencies". Paket-paket ini tidak perlu bagi orang lain untuk menggunakan modul, tetapi jika mereka ingin membantu mengembangkan modul, paket-paket ini akan diperlukan. Dengan menggunakan npm, Anda dapat menambahkan devDependencies tersebut ke file package.json Anda dengan cara ini:
sumber
Untuk menambahkan jawaban Andreas, Anda hanya dapat menginstal dependensi dengan menggunakan:
sumber
Dokumentasi dari npm untuk
npm install <package-name> --save
dannpm install <package-name> --save-dev
dapat ditemukan di sini:https://docs.npmjs.com/getting-started/using-a-package.json#the-save-and-save-dev-install-flags
Sebuah
package.json
file yang menyatakan metadata tentang modul Anda berkembang. Kedua perintah tersebut memodifikasipackage.json
file ini .--save
akan mendeklarasikan paket yang diinstal (dalam hal ini,grunt
) sebagai dependensi untuk modul Anda;--save-dev
akan mendeklarasikannya sebagai dependensi untuk pengembangan modul Anda.Tanyakan pada diri Anda: apakah paket yang diinstal diperlukan untuk menggunakan modul saya, atau hanya diperlukan untuk mengembangkannya?
sumber
Ketika Anda menggunakan parameter "--save" ketergantungan Anda akan masuk ke dalam # 1 di bawah ini di package.json. Ketika Anda menggunakan parameter "--save-dev" ketergantungan Anda akan masuk ke dalam # 2 di bawah ini di package.json.
# 1. "dependensi": paket-paket ini diperlukan oleh aplikasi Anda dalam produksi.
# 2. "devDependencies": paket ini hanya diperlukan untuk pengembangan dan pengujian
sumber
Bagi saya jawaban pertama tampak agak membingungkan, jadi singkatkan dan bersihkan:
npm install <package_name>
menyimpan paket tertentu ke dalam dependensi secara default . Selain itu, Anda dapat mengontrol di mana dan bagaimana mereka disimpan dengan beberapa flag tambahan:npm install <package_name> --no-save
Mencegah menabung ke dependensi.npm install <package_name> ---save-dev
memperbaruidevDependencies
paket Anda. Ini hanya digunakan untuk pengujian dan pengembangan lokal.Anda dapat membaca lebih lanjut di dalam DCU
sumber