Sepakat; dengan asumsi Anda telah membuat package.jsonfile untuk aplikasi Anda.
JohnnyHK
9
Berhati-hatilah bahwa menjalankan npm installsetelah menghapus node_modulesdirektori dapat menghasilkan berbagai versi dependensi yang ditentukan package.jsonsaat ditarik turun. Jika Anda memerlukan versi dependensi yang sangat spesifik untuk aplikasi Anda, berhati-hatilah dan lihat npm shrinkwrapatau periksa di node_modulesdirektori Anda untuk kontrol sumber.
smithclay
10
@smithclay Saya telah mendefinisikan versi eksplisit dari paket di package.json aplikasi saya, jadi seharusnya tidak apa-apa, kan?
trusktr
@vadim Saya melakukan beberapa pengujian pada perilaku npm installdan selalu menginstal ulang dependensi dan memutakhirkan paket ke versi terbaru sebagaimana diizinkan oleh package.json. Jadi menghapus node_modulesfolder tidak diperlukan kecuali Anda pikir itu rusak. Apakah ada alasan Anda berpikir itu harus dihapus? Namun, jika tujuannya adalah untuk menghilangkan paket yang asing maka Anda bisa menjalankan npm prunebukannya
himanshu
1
@ himanshu Anda benar npm installmeningkatkan semua modul ke status package.json. Tetapi pertanyaannya adalah bagaimana menginstal ulang semua paket . Jadi mereka mungkin rusak atau mungkin perlu membangun kembali bagian biner setelah memutakhirkan node.js verison.
Vadim Baryshev
96
Cara yang benar adalah dengan mengeksekusi npm update. Ini adalah perintah yang sangat kuat, memperbarui paket yang hilang dan juga memeriksa apakah versi yang lebih baru dari paket yang sudah diinstal dapat digunakan.
Baca Intro to NPM untuk memahami apa yang dapat Anda lakukan dengan npm.
Tetapi jika tidak ada paket yang lebih baru maka ini tidak akan melakukan apa-apa, kan? Saya mencoba untuk memaksa menginstal ulang bahkan jika paket tersebut sudah pada versi terbaru.
trusktr
2
Jika tidak ada paket yang hilang, maka itu akan memeriksa apakah dapat menggunakan versi terbaru dari paket (termasuk dependensi paket) yang tercantum dalam package.json. Jadi, pada dasarnya itu akan meningkatkan paket jika memungkinkan. Tetapi itu tidak akan menginstal ulang. Jika Anda ingin melakukannya dengan menggunakan perintah, Anda dapat menjalankan npm uninstall <package_name>untuk menghapus paket tertentu atau mengeksekusi npm uninstalluntuk menghapus semua paket.
himanshu
1
Saya mencoba melakukan npm uninstalltanpa menentukan paket tetapi itu menimbulkan kesalahan.
trusktr
Apakah Anda memiliki package.json di direktori folder tempat Anda mengeksekusi ini? Jika Anda menghapus paket global maka Anda perlu menambahkan -g
himanshu
1
Tautan yang Anda berikan sudah mati, dapatkah Anda memberikan yang baru? (Saya menemukan ini tetapi saya tidak yakin itu dapat diterima untuk mengubahnya)
Motti
64
Sebagian besar waktu saya menggunakan perintah berikut untuk mencapai instal ulang lengkap semua modul simpul (pastikan Anda berada di folder proyek).
rm -rf node_modules && npm install
Anda juga dapat menjalankan npm cache cleansetelah menghapus node_modulesfolder untuk memastikan tidak ada dependensi cache.
Setelah menginstalnya, Anda dapat menggunakan perintah berikut:
reinstall
Satu-satunya perbedaan dengan menghapus node_modulesfolder secara manual dan membuatnya npm installadalah bahwa perintah ini secara otomatis menghapus cache npm. Jadi, Anda bisa mendapatkan tiga langkah dalam satu perintah.
upd:npx reinstall adalah cara untuk menjalankan perintah ini tanpa menginstal paket secara global (hanya untuk npm5 +)
@ g00glen00b Saya telah diedit sehingga sekarang tidak termasuk informasi yang berguna tanpa hyperlink
Rob
@ g00glen00b Tidak apa-apa; itu tidak menjadikan ini kandidat untuk dihapus. Silakan lihat posting ini - Secara khusus membahas jawaban singkat dengan tautan, asalkan ada beberapa informasi yang berguna (yaitu, nama perpustakaan) ketika hyperlink dihapus
Rob
6
Anda dapat melakukan ini dengan satu perintah sederhana:
Ikuti langkah ini untuk menginstal ulang modul simpul dan memperbaruinya
berfungsi bahkan jika folder node_modules tidak ada. sekarang jalankan perintah berikut secara sinkron. Anda juga dapat menggunakan "pembaruan npm" tapi saya rasa ini lebih disukai
npm outdated // not necessary to run this command, but this will show outdated dependencies
npm install -g npm-check-updates // to install the "ncu" package
ncu -u --packageFile=package.json // to update dependencies version in package.json...don't run this command if you don't need to update the version
npm install: will install dependencies in your package.json file.
jika Anda baik-baik saja dengan versi dependensi Anda di file package.json Anda, tidak perlu mengikuti langkah-langkah itu jalankan saja
npm rebuild
mungkin juga membantu beberapa masalah dengan dependensi aslinpm update <packageName>
berfungsi dengan baikJawaban:
Cara termudah yang bisa saya lihat adalah menghapus
node_modules
folder dan menjalankannpm install
.sumber
package.json
file untuk aplikasi Anda.npm install
setelah menghapusnode_modules
direktori dapat menghasilkan berbagai versi dependensi yang ditentukanpackage.json
saat ditarik turun. Jika Anda memerlukan versi dependensi yang sangat spesifik untuk aplikasi Anda, berhati-hatilah dan lihatnpm shrinkwrap
atau periksa dinode_modules
direktori Anda untuk kontrol sumber.npm install
dan selalu menginstal ulang dependensi dan memutakhirkan paket ke versi terbaru sebagaimana diizinkan oleh package.json. Jadi menghapusnode_modules
folder tidak diperlukan kecuali Anda pikir itu rusak. Apakah ada alasan Anda berpikir itu harus dihapus? Namun, jika tujuannya adalah untuk menghilangkan paket yang asing maka Anda bisa menjalankannpm prune
bukannyanpm install
meningkatkan semua modul ke status package.json. Tetapi pertanyaannya adalah bagaimana menginstal ulang semua paket . Jadi mereka mungkin rusak atau mungkin perlu membangun kembali bagian biner setelah memutakhirkan node.js verison.Cara yang benar adalah dengan mengeksekusi
npm update
. Ini adalah perintah yang sangat kuat, memperbarui paket yang hilang dan juga memeriksa apakah versi yang lebih baru dari paket yang sudah diinstal dapat digunakan.Baca Intro to NPM untuk memahami apa yang dapat Anda lakukan dengan npm.
sumber
npm uninstall <package_name>
untuk menghapus paket tertentu atau mengeksekusinpm uninstall
untuk menghapus semua paket.npm uninstall
tanpa menentukan paket tetapi itu menimbulkan kesalahan.Sebagian besar waktu saya menggunakan perintah berikut untuk mencapai instal ulang lengkap semua modul simpul (pastikan Anda berada di folder proyek).
Anda juga dapat menjalankan
npm cache clean
setelah menghapusnode_modules
folder untuk memastikan tidak ada dependensi cache.sumber
npm
memperbarui perintah CLI untukinstall
dan menambahkan--force
bendera.The
--force
(atau-f
) argumen akan memaksanpm
untuk mengambil sumber daya jauh bahkan jika salinan lokal ada pada disk.Lihat
npm install
sumber
Anda dapat menggunakan modul instal ulang yang ditemukan di npm.
Setelah menginstalnya, Anda dapat menggunakan perintah berikut:
Satu-satunya perbedaan dengan menghapus
node_modules
folder secara manual dan membuatnyanpm install
adalah bahwa perintah ini secara otomatis menghapus cache npm. Jadi, Anda bisa mendapatkan tiga langkah dalam satu perintah.upd:
npx reinstall
adalah cara untuk menjalankan perintah ini tanpa menginstal paket secara global (hanya untuk npm5 +)sumber
Anda dapat melakukan ini dengan satu perintah sederhana:
sumber
Untuk Windows bisa Anda gunakan
yang menghapus
node_modules
direktori dan melakukannpm install
itu. Penghapusan sebelum menginstal memastikan bahwa semua paket diinstal ulang.sumber
Ikuti langkah ini untuk menginstal ulang modul simpul dan memperbaruinya
berfungsi bahkan jika folder node_modules tidak ada. sekarang jalankan perintah berikut secara sinkron. Anda juga dapat menggunakan "pembaruan npm" tapi saya rasa ini lebih disukai
jika Anda baik-baik saja dengan versi dependensi Anda di file package.json Anda, tidak perlu mengikuti langkah-langkah itu jalankan saja
sumber