我的任务是:
var gulp = require('gulp');
gulp.task('myStaticFiles', function() {
gulp.src('staticSite/**')
.pipe(gulp.dest('build/site'));
});在src和dest之间,我想做一个gulp-replace (或类似的)。我目前有:
var gulp = require('gulp');
var replace = require('gulp-replace');
gulp.task('myStaticFiles', function() {
gulp.src('staticSite/**')
.pipe(replace(/mypattern/, "replacevalue"))
.pipe(gulp.dest('build/site'));
});但是,这会影响管道中的所有文件。我想:
replace影响的流中只有特定文件(按名称计算的特定文件,或具有特定扩展名的文件);以及gulp.dest。我怎样才能做到呢?
文档对此一无所知,所以也许我只是缺乏一些关于“吞咽方式”的知识来做这类事情?
发布于 2015-12-11 10:01:58
尝试这种方法,使用吞咽
(function() {
'use strict';
var gulp = require( 'gulp' ),
gulpif = require( 'gulp-if' ),
replace = require( 'gulp-replace' );
var condition = function ( file ) {
// TODO: add business logic
return true;
}
gulp.task( 'myStaticFiles', function() {
return gulp
.src( 'staticSite/**' )
.pipe( gulpif( condition, replace( /mypattern/, 'replacevalue' ) ) )
.pipe( gulp.dest( 'build/site' ) );
});
})();https://stackoverflow.com/questions/34219272
复制相似问题