回答:
私が見ることができる最も簡単な方法は、node_modules
フォルダを削除して実行することnpm install
です。
package.json
アプリのファイルを作成したと仮定します。
npm install
削除した後に実行すると、プルダウンでnode_modules
定義された異なるバージョンの依存関係が発生する可能性があることに注意してくださいpackage.json
。アプリに非常に特定のバージョンの依存関係が必要な場合は、注意npm shrinkwrap
してnode_modules
ディレクトリを調べたり、ソース管理にチェックインしたりしてください。
npm install
常に依存関係を再インストールし、package.jsonで許可されている最新バージョンにパッケージをアップグレードします。したがってnode_modules
、破損していると思わない限り、フォルダを削除する必要はありません。削除する必要があると思われる理由はありますか?目的は無関係のあるすべてのパッケージを削除する場合しかし、あなたは実行することができるnpm prune
代わりに
npm install
すべてのモジュールをpackage.json状態にアップグレードします。しかし問題は、すべてのパッケージを再インストールする方法です。したがって、それらが破損しているか、node.js verisonのアップグレード後にバイナリパーツを再構築する必要がある場合があります。
正しい方法は、実行することnpm update
です。これは非常に強力なコマンドで、不足しているパッケージを更新し、すでにインストールされているパッケージの新しいバージョンを使用できるかどうかを確認します。
Intro to NPMを読んで、npmで何ができるかを理解してください。
npm uninstall <package_name>
して特定のパッケージnpm uninstall
をアンインストールするか、実行してすべてのパッケージをアンインストールできます。
npm uninstall
パッケージを指定せずにやってみましたがエラーになります。
npm
のCLIコマンドを更新しinstall
、--force
フラグを追加しました。
npm install --force
--force
(または-f
)引数が強制的にnpm
ローカルコピーがディスク上に存在する場合でも、リモートリソースを取得します。
見る npm install
npmにある再インストールモジュールを使用できます。
インストール後、次のコマンドを使用できます。
reinstall
手動でnode_modules
フォルダーを削除して作成することの唯一の違いnpm install
は、このコマンドがnpmのキャッシュを自動的にクリアすることです。したがって、1つのコマンドで3つのステップを取得できます。
upd: npx reinstall
パッケージをグローバルにインストールせずにこのコマンドを実行する方法です(npm5 +のみ)
Windowsの場合、使用できます
(if exist node_modules rmdir node_modules /q /s) && npm install
node_modules
ディレクトリを削除して実行しnpm install
ます。インストール前に削除すると、すべてのパッケージが確実に再インストールされます。
この手順に従って、ノードモジュールを再インストールして更新します。
node_modulesフォルダーが存在しない場合でも機能します。次のコマンドを同期的に実行します。「npm update」も使用できますが、これが望ましい方法だと思います
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.
package.jsonファイルの依存関係のバージョンに問題がない場合は、次の手順を実行するだけで実行できます
npm install
npm rebuild
ネイティブの依存関係に関するいくつかの問題も解決する可能性があります