0

我安装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 相同。

谢谢

4

0 回答 0