1

我的文件夹结构:

dashboard >
    components >
        accounts > accounts.js, accountsDirectives.js
        dash > dashApp.js
        settings > settings.js, settingsDirectives.js
        etc...

我在 Gulpfile 中的功能

function compile_js(minify, folder) {
    var jsLibs = gulp.src('client/'+folder+'/_sources/js/libs/*.js');
    var jsPlugins = gulp.src('client/'+folder+'/_sources/js/plugins/*.js');
    var jsCustom = gulp.src('client/'+folder+'/_sources/js/custom/*.js');
    var jsComponents = gulp.src('client/'+folder+'/components/*.js');

    // Order the streams and compile
    return streamqueue({ objectMode: true },
        jsLibs,
        jsPlugins,
        jsCustom,
        jsComponents
    )
    .pipe(concat(folder+'.module.js'))
    .pipe(gulpif(minify, uglify()))
    .pipe(gulp.dest('client/'+folder+'/assets/js'));
};

问题是这一行,它针对组件目录:

var jsComponents = gulp.src('client/'+folder+'/components/*.js');

我也试过了/components/**/*.js,但还是不行。

我在这里找到了这个答案,他们谈论 symlinks,但我想避免使用它。1)这似乎是一种 hack,并且 2)这要求所有当前和未来的开发人员也在他们的计算机上创建确切的符号链接。

有没有另一种方法可以轻松地定位和编译具有子目录的目录中的所有 js 文件?

4

1 回答 1

1

Have you tried creating the paths first and then using the variables in your gulp.src arguments? Im also curious if since you are minifying them, why don't you just grab all the files for some of them with something like :

var someVar = gulp.src('client/'+folder+'/_sources/js/**/*.js');

vs

var jsPlugins = gulp.src('client/'+folder+'/_sources/js/plugins/*.js');
var jsCustom = gulp.src('client/'+folder+'/_sources/js/custom/*.js');
于 2015-02-23T06:07:37.783 回答