Gulp输出到多个文件而不是一个大文件?

时间:2015-08-02 08:02:49

标签: javascript build gulp frontend browserify

是否可以配置gulpfile输出多个文件而不是一个?
我遇到的所有示例都演示了将所有js文件缩小并连接到index.html将加载的一个大包js文件中。 当您的应用程序使用许多库变得越来越大,越来越复杂时,这个捆绑包会很快变得臃肿,您会发现一个大的捆绑文件不适合扩展您的应用程序。
这种连接是必须的吗?或者我们可以简单地缩小和缩小uglify&将每个文件浏览到输出文件夹中相应的缩小版本?

干杯
微开

1 个答案:

答案 0 :(得分:1)

您绝对可以配置gulpfile来输出多个文件而不是一个。例如,我有一个gulp任务:

gulp.task('styles', function () {
  gulp.src('dev/less/*.less')
    .pipe(plumber())
    .pipe(less())
    .pipe(prefix())
    .pipe(minifyCSS())
    .pipe(gulp.dest('dist/css'))
});

我的less文件夹中有5个.less文件,它们在我的分发文件夹中成为5个.css文件,名称匹配。

对于JavaScript文件:

gulp.task('scripts', function () {
  gulp.src('dev/landing/*.js')
    .pipe(uglify())
    .pipe(gulp.dest('dist/js'));
});

四个JavaScript文件在我的distribution/js文件夹中成为自己的uglified版本。

但是,如果您想特别解决browserify,这是一个不同的问题。 browserify构建的目的是包含源自最初包含的JavaScript文件的任何依赖项。

如果保留单独的文件对您来说更重要,您可以查看browserify-deoptimizer