Gulp:文件无法读取在上一个任务中创建的内容

时间:2015-04-30 13:26:29

标签: angularjs gulp gulp-concat gulp-uglify

此处app/folder1/包含 3 angularjs文件(控制器,服务,工厂)。通过使用'task1',我将所有html文件合并到' templates.js' 中。在'task2'中,我需要将3个angularjs文件和1个templates.js文件合并到单个文件中。

但在“任务2'”中,系统只读取3个angularjs文件。如果我运行任务2'然后系统将4个文件组合在一起。

gulp.task('task1',function() {
     gulp.src('app/**/*.html')
           .pipe(minifyHtml({empty: true}))
           .on('error', gutil.log)
           .pipe(templateCache({root: 'app/folder1/',module:'myModule'}))
           .on('error', gutil.log)
           .pipe(gulp.dest('app/folder2/'))
           .on('error', gutil.log);
     });
});

gulp.task('task2',function(){
     var newName = 'script_' + new Date().getTime() + '.js';
     gulp.src('app/folder2/**/*.js')
         .on('error', gutil.log)
         .pipe(concat(newName,{newLine: ';'}))
         .on('error', gutil.log)
         .pipe(gulp.dest('/dist/'))
         .on('error', gutil.log)
         .pipe(uglify({mangle:false }))
         .on('error', gutil.log)
         .pipe(gulp.dest('/dist/'))
         .on('error', gutil.log);
    });
});


gulp.task('default', function(callback) {
    runSequence('task1','task2',callback);
});

如果我运行gulp命令,则不会合并 templates.js 文件。

如果我运行gulpgulp task2,那么它会按预期运行。

问题是什么?

1 个答案:

答案 0 :(得分:1)

如果您不打算在callbacktask1内处理task2,我相信您需要退回流。

return gulp.src('app/**/*.html')
         .pipe(...