Gulp.js:" gulp-chug"即使设置为观看多个文件,也只运行一个文件

时间:2014-09-29 13:41:23

标签: node.js npm task gulp watch

我已经开始与Gulp合作,我遇到的问题是让gulp-chug正常工作。

我已经按照文档中的所有内容,告诉我的gulpfile在某些目录中查看所有gulpfiles,而它只能看一个文件。

这是我在文档后使用的代码......

var gulp = require('gulp');
var chug = require('gulp-chug');

gulp.task('default', function () {
    gulp.src('**/task_runner/gulpfile.js')
        .pipe(chug());
});

如果我将文件路径放在数组中,我甚至试图看看它是否有所作为......

...
    gulp.src(
        [ '**/task_runner/gulpfile.js' ]
    )
...

我也尝试了这个(以及gulp.src()中没有数组的版本)......

...
    gulp.src(
        [ 'Project_01/task_runner/gulpfile.js', 'Project_02/task_runner/gulpfile.js' ]
    )
...

......它仍然做同样的事情。

我的文件结构如下所示,

*root*
    node_modules
    gulpfile.js
    package.json
    Project_01
        css
        scss
        task_runner
    Project_02
        css
        scss
        task_runner

所有gulpfiles在单独运行时都可以正常工作,但是我希望它们能够在一个 cmd 窗口中同时运行并带有gulp-chug。

这就是我的 cmd 的样子,这表明它只是在观看Project_02,

C:\Users\WaheedJ\Desktop\UniServer\www\Practice\gulp>gulp
[14:19:40] Using gulpfile ~\Desktop\UniServer\www\Practice\gulp\gulpfile.js
[14:19:40] Starting 'default'...
[14:19:40] Finished 'default' after 6.37 ms
[gulp-chug] File is a buffer. Need to write buffer to temp file...
[gulp-chug] Writing buffer to Project_02\task_runner\gulpfile.tmp.1411996780120.
js...
[gulp-chug] Spawning process C:\Users\WaheedJ\Desktop\UniServer\www\Practice\gul
p\Project_02\task_runner\node_modules\gulp\bin\gulp.js with args C:\Users\Waheed
J\Desktop\UniServer\www\Practice\gulp\Project_02\task_runner\node_modules\gulp\b
in\gulp.js --gulpfile gulpfile.tmp.1411996780120.js default from directory C:\Us
ers\WaheedJ\Desktop\UniServer\www\Practice\gulp\Project_02\task_runner...
[gulp-chug](Project_02\task_runner\gulpfile.tmp.1411996780120.js) [14:19:42] Usi
ng gulpfile ~\Desktop\UniServer\www\Practice\gulp\Project_02\task_runner\gulpfil
e.tmp.1411996780120.js
[gulp-chug](Project_02\task_runner\gulpfile.tmp.1411996780120.js) [14:19:42] Sta
rting 'watch'...
[gulp-chug](Project_02\task_runner\gulpfile.tmp.1411996780120.js) [14:19:43] Fin
ished 'watch' after 18 ms
[14:19:43] Starting 'default'...
[14:19:43] Finished 'default' after 7.13 µs

我该怎么做才能解决这个问题?

1 个答案:

答案 0 :(得分:0)

我发生了同样的事情。现在我采用了这种解决方法:

gulp.task('default', ['one-gulpfile', 'another-gulpfile'], function () {});
gulp.task('one-gulpfile', function () { return gulp.src('./project-one/gulpfile.js').pipe(chug()); });
gulp.task('another-gulpfile', function () { return gulp.src('./project-another/gulpfile.js').pipe(chug()); });

基本上是一个空的默认任务,依赖于每个运行一个gulp文件的硬编码任务。

当然不是动态的,需要维护,但我知道这是我现在最需要的。我希望看到chug成熟一点。