多个gulp文件和使用require的其他gulpfiles.js继承任务

时间:2015-05-20 21:27:14

标签: javascript gulp

我试图在我运行gulp命令的gulpfile(gulpfile.js)中要求gulpfile(someGulpfile.js)。当我尝试使用someGulpfile中定义的任务时,即使我在Task 'default' is not in your gulpfile

中执行require('./someGulpfile');,它也会在控制台上发出错误gulpfile.js

如何使用someGulpfile中定义的任务?是什么导致了这个问题?

我发现这有点起作用,但它不会输出每个运行的任务(例如它不输出,启动sometask,完成某些任务,启动默认值,......)如果有错误则不会显示错误及其发生的位置,但在gulp库代码中出错,因为它无法格式化错误输出。

//gulpfile.js
var gulp = require('gulp');
gulp.tasks = require('./someGulpfile').tasks;

//someGulpfile.js
var gulp = require('gulp');
gulp.task('sometask', function() {});
gulp.task('default', ['sometask']);
module.exports = gulp;

1 个答案:

答案 0 :(得分:1)

可以尝试这样的事情:

<强> gulpfile.js

require("./gulp/tasks/build-js.js")();
require("./gulp/tasks/build-css.js")();

<强> ./吞/任务/集结js.js

var gulp = require("gulp");

module.exports = function() {
    gulp.task("js", function() {
        return gulp.src("./app/**/*.js")
                   .pipe(); 
                   //etc.
    }
}

<强> ./吞/任务/集结css.js

var gulp = require("gulp");

module.exports = function() {
    gulp.task("css", function() {
        return gulp.src("./app/style/*.css")
                   .pipe();
                   //etc.
    }
}

这样您就可以将gulp任务模块化到不同的文件夹中。