[英]reduce size of node_modules for production
我創建了node_modules,用於在nhostk的幫助下從localhost上傳插件到在線站點,並在CommandPrompt中使用npm install 。 但是創建的node_modules文件夾大小為78mb。 在這種情況下,我必須通過刪除不需要的文件夾來減小大小,所以我上網並得到兩個建議,因為它可以有效減小尺寸,它們是:使用--production模式 ,另一個是使用shrinkwrap 。
作為第一步,我使用命令npm install --production和npm install --only = production,如下所示: 你如何阻止為Node.js(package.json)安裝“devDependencies”NPM模塊? ,但我看不到文件夾大小的任何變化。
然后參考如何使用shrinkwrap來減小這個站點中給出的大小並嘗試它: https : //docs.npmjs.com/cli/shrinkwrap ,但它沒有成功。
另外我在這里提到: https : //www.npmjs.com/package/modclean ,其中使用命令modclean -n default:safe我減少了10-11mb。
但是,我仍然在node_modules中有大量不需要的文件夾。 我在package.json中指定了幾個必需的依賴項,如下所示,
"dependencies": {
"atlassian-connect-express": "2.0.0",
"body-parser": "^1.14.2",
"compression": "^1.6.0",
"cookie-parser": "^1.4.0",
"errorhandler": "^1.4.2",
"express": "^4.13.3",
"express-hbs": "*",
"jugglingdb-sqlite3": "0.0.5",
"morgan": "^1.6.1",
"static-expiry": ">=0.0.5"
}
我在package.json中給出的依賴很少,但我看到在node_modules中創建了大量文件夾。 如何減小node_modules的大小,還有其他進程嗎?
從NPM v3開始,應用程序中的所有依賴項都盡可能保存在node_modules
- 這使得NPM更容易刪除重復項,並防止Windows上出現一些令人討厭的“路徑太長”錯誤。
要意識到的重要一點是,當我說“你的應用程序中的所有依賴項”時,我不只是指你們的package.json
的那些 - 所有這些包也都有自己的依賴項(並且它們的依賴項可能有他們自己的依賴關系,等等)。 這就是node_modules
總是有這么多文件夾的原因。
作為一個例子 - express
有28個依賴項,因此如果這是你安裝的唯一東西,那么你的node_modules
至少有29個文件夾 - 並且沒有分解子依賴項。
所以,要回答你的問題 - 除了你指定的東西,你不能讓你的node_modules
更小,因為你正在使用所有這些文件夾! 只是不總是以最直接的方式。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.