javascript - node_modules 文件夹太大

标签 javascript gulp node-modules package.json

我使用 Gulp 已经有一段时间了,要么我没有注意到它从一开始就占用了这么多空间,要么尺寸一直在增长。
我只将它用于非常正常的前端工作。例如,这是我的 gulpfile.js 的请求部分:

var gulp         = require('gulp'),
    autoprefixer = require('gulp-autoprefixer'),
    browserSync  = require('browser-sync'),
    concat       = require('gulp-concat'),
    copy         = require('gulp-copy'),
    del          = require('del'),
    htmlmin      = require('gulp-htmlmin'),
    merge        = require('merge-stream'),
    streamqueue  = require('streamqueue'),
    cleancss     = require('gulp-clean-css'),
    gulpif       = require('gulp-if'),
    newer        = require('gulp-newer'),
    imgmin       = require('gulp-imagemin'),
    plumber      = require('gulp-plumber'),
    postcss      = require('gulp-postcss'),
    order        = require('gulp-order'),
    rename       = require('gulp-rename'),
    runSequence  = require('run-sequence'),
    sass         = require('gulp-sass'),
    sourcemaps   = require('gulp-sourcemaps'),
    uglify       = require('gulp-uglify'),
    uncss        = require('gulp-uncss');

现在,根据 du -sh , node_modules 重 2.2GB,我认为这太过分了。我想更深入地挖掘,所以我查看了所有根模块:
DaisyDisk look at a regular node_modules/ folder

我可能在这里很天真,但我只是期待一些 javascript 功能,我不明白这些模块(尤其是顶级模块)如何或为什么会这么大。
这就是 Gulp 的设计方式吗?我是在倒着做吗?我可以改进这个(除了不使用它/那些)吗?

最佳答案

我想到了一些方法:

  • 它更多的是关于你的 package.json,所以如果你可以优化它,这是一个非常好的选择:
  • 单独的包作为 devDependencies 和依赖项,它有助于减少生产模式下的 node_modules 大小(当您在 npm install 上使用 –production 标志时)。
  • 用较轻的库或依赖项较少的库替换一些大的库或具有如此多依赖项的库。

  • 使用node-prunemodclean或其他类似的软件包,以从 node_modules 中删除不必要的文件。
  • 关于javascript - node_modules 文件夹太大,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42059131/

    相关文章:

    javascript - 在以编程方式创建的 div 的标题中添加复选框

    javascript - "with"语句的效率如何?

    javascript - typescript + moment.js : error TS2307: Cannot find module 'moment'

    android - 在 react-native 项目中找不到 metro-config node_modules

    javascript - socket.io 和 Node 的 Net 模块的区别

    javascript - 展开/折叠 jquery 中的所有列表

    javascript - 将具有颜色的变量分配给 CSS 中的背景属性

    javascript - 在 gulp 中用冒号调用任务是什么意思?

    javascript - 在 gulp watch 期间使用管道

    node.js - 在我的 React api 中发送 header 后无法设置 header