2016-07-07 7 views
0

gulp-uglify를 사용하여 코드를 축소했습니다. 변경하고 싶은 점이 있습니다.gulp-uglify는 이름을 바꿀 수 없습니다.

다음은 gulpfile.js입니다. 내가 할 때 gulp calendar-uglify/compile/디렉토리 안의 컴파일과 이름은 calendar.min.js입니다. 내가 uglify 안에있는 이름을 바꾸고 명령을 다시 실행하면 gulp가 다시 이름을 생성합니다.

나는 uglify가 내가 작성한 이름으로 파일을 컴파일 할 수 없다는 것을 의미합니다. Gulp-uglify allways는 concat 파일의 파일 이름을 사용합니다.

변경하려면 어떻게해야합니까?

TY,

Jaster

gulpfile.js

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

// Private callbacks 

/** 
* Calendar js concat 
* @private 
**/ 
var _calendarConcat = function(){ 
    return gulp.src(['./src/olympics/Calendar.js', './src/entry/calendar.js']) 
    .pipe(concat('calendar.min.js')) 
    .pipe(gulp.dest('./dist')); 
}; 

/** 
* Calendar js uglify 
* @private 
**/ 
var _calendarUglify = function(){ 
    return gulp.src('./dist/calendar.min.js') 
    .pipe(uglify('calendar.min.js', { 
     mangle: true, 
     output: { 
     beautify: true 
     } 
    })) 
    .pipe(gulp.dest('./compile/')); 
}; 

// Task def 

gulp.task('calendar-concat', _calendarConcat); 
gulp.task('calendar-uglify', _calendarUglify); 

답변

2

gulp-uglify documentation 명시 적으로 어디 uglify()하기위한 방법 서명을 명시하지 않지만, 당신은 그것을 파악하는 the source code 볼 수 있습니다 아웃. 그것은 본질적으로이있어 :

  • optsoptions의 선택지도입니다
    uglify([opts, [uglify]]) 
    

    .

  • uglify 그래서 방법은 uglify()을 사용하여 다른 파일 이름을 지정 없다 옵션 instance of uglifyJs

입니다.

어쨌든 필요하지 않습니다. 꿀꺽 꿀꺽 마시는 플러그인은 한 가지만하고 한 가지만 수행해야합니다. 그렇게하면 더 복잡한 파이프 라인으로 결합 할 수 있습니다.

var rename = require('gulp-rename'); 

var _calendarUglify = function(){ 
    return gulp.src('./dist/calendar.min.js') 
    .pipe(uglify({ 
     mangle: true, 
     output: { 
     beautify: true 
     } 
    })) 
    // renames the file to calendar2.min.js 
    .pipe(rename({basename:'calendar2.min'})) 
    .pipe(gulp.dest('./compile/')); 
}; 
: 귀하의 경우

당신은 당신이 파일의 이름을 변경의를하자 gulp-rename plugin을 찾고