首页 > 解决方案 > Gulp 正在编译每个 Js 文件

问题描述

我的吞咽有问题。
它工作正常而且速度非常快,但 Gulp 正在编译我项目中的所有 js 文件......

我的吞咽手表:

gulp.task('watch', function () {
    gulp.watch(sassFilesWatch, ['styles']);
    gulp.watch(jsFilesWatch, ['uglify'])
});

我的数组:

var jsFilesWatch = [
    'clients/*/template/lib/jscripts/*.js',
    'clients/*/template/modules/**/*.js',
    'system/lib/jscripts/*.js',
    'system/mod/**/*.js',
    'clients/core/modules/**/*.js',
    '!/**/*.min.js'
];

那是我的功能:

gulp.task('uglify', function(){
    pump([
        gulp.src(jsFilesWatch, {
            base: './'
        }),
        debug({
            title: 'Compiled',
            showFiles: false,
        }),
        uglify(),
        rename({ suffix: '.min' }),
        gulp.dest('./')
    ]);
});

这就是输出:
输出

只是我保存的文件应该被编译我该怎么做?

多谢

标签: javascriptgulpgulp-watchgulp-uglify

解决方案


似乎您所有带有 .js 扩展名的文件都在被调试、丑化和缩小。您要编译哪个保存的文件?

**/*.js 使用 gulp 命令查看所有文件夹中所有扩展名为 .js 的文件。

你可以使用 .pipe()

var uglify = require('gulp-uglify'),
concat = require('gulp-concat');

gulp.task('js', function() {
gulp.src('scripts/*.js')
.pipe(uglify())
.pipe(concat('script.js'))
.pipe(gulp.dest('assets'))
});

推荐阅读