如何使用gulp在不同的html中组织不同的js文件?

时间:2015-11-08 15:06:13

标签: gulp organized

如何使用gulp在不同的html中组织不同的js文件?
我能做的唯一方法是定义每个页面来吞咽任务吗?或者gulp有更好的方法可以自动检测文件吗?

以下是我的情况 我有两个html' index.html',' content.html'

  • index.html需要plugin_A.js
  • content.html需要plugin_B.js

我的gulp文件:

gulp.task('index_concat', function() {
    return gulp.src('./app/js/plugin_A.js')
        .pipe(concat('index.js'))
        .pipe(gulp.dest('./build/js/'));
});
gulp.task('content_concat', function() {
    return gulp.src('./app/js/plugin_B.js')
        .pipe(concat('content.js'))
        .pipe(gulp.dest('./build/js/'));
});

如果我有100页,那么任务太大了!!! 我认为这是定义每个页面的一种愚蠢的方式,但我不知道如何变得更好。请给我一些建议。

1 个答案:

答案 0 :(得分:1)

您可以为插件使用一些名称约定,例如pluginName_index.js和pluginName_content.js。所以你可以做那样的事情:

function yourFunction(pluginName,targetName){
   return gulp.src('./app/js/'+pluginName)
      .pipe(concat(targetName))
      .pipe(gulp.dest('./build/js/'));
}

fs.readdirSync('.app/js/pluginFolder')
.filter(function(fileName) {
    var fileNameParts = fileName.split('_');
    yourFunction(fileName,fileNameParts[1]);
});