我在Gulp文件中有3个任务,必须按照以下顺序运行:
clean
(删除/dist
文件夹中的所有内容)copy
(将多个文件复制到/dist
文件夹中)replace
(替换/dist
文件夹中某些文件中的一些字符串)
我已经阅读了所有其他帖子,尝试过“run-sequence”,但是由于“replace”任务未最后运行,因此它无效。 我对“callback”的使用感到困惑。 分别运行任务可以正常工作。
var gulp = require('gulp');
var runSequence = require('run-sequence');
gulp.task('runEverything', function(callback) {
runSequence('clean',
'copy',
'replace',
callback);
});
gulp.task('clean', function () {
return del(
'dist/**/*'
);
});
gulp.task('copy', function() {
gulp.src('node_modules/bootstrap/dist/**/*')
.pipe(gulp.dest('dist/vendor'))
//...
return gulp.src(['index.html', '404.html', '.htaccess'])
.pipe(gulp.dest('dist/'));
});
gulp.task('replace', function(){
gulp.src(['dist/index.php', 'dist/info.php'])
.pipe(replace('fakedomain.com', 'realdomain.com'))
.pipe(gulp.dest('dist'));
return gulp.src(['dist/config.php'])
.pipe(replace('foo', 'bar'))
.pipe(gulp.dest('dist'));
});
希望您能提供一个使用这3个任务的完整示例。谢谢。