我安装gulp-changed
在我的脚本任务上,如果我将一个字符串传递给它(例如:'output/'),它就可以正常工作。但是在我的项目中,我使用的函数返回 dest 与源相同:
gulp.task('scripts', function(){
gulp.src([
'assets/scripts/**/*.js',
'!assets/scripts/**/_*.js',
'!assets/scripts/**/*.min.js'
])
// 1* it works fine with a string
//.pipe(gulpif(global.isWatching, changed( 'output/' ) ))
// 2* it doesn't work with the function
.pipe(gulpif(global.isWatching, changed( function(file) { return file.base; } ) ))
.pipe(include())
.on('error', console.log)
.pipe(babel({
presets: ['es2015'],
compact: true
}))
.pipe(gulpif(env === "production", uglify().on('error', gutil.log)))
.pipe(rename({ suffix: '.min' }))
//.pipe(gulp.dest( 'output/' ));
//it works if i don't apply changed with a function
.pipe(gulp.dest( function(file) { return file.base; } ));
});
我究竟做错了什么?也许我需要更改功能。我仍然希望 dest 与 src 相同。
谢谢