2017-08-01 14 views
1

メインファイルassets.min.jsのjsファイル(filesJs配列内)を連結して縮小するgulpタスクがありますが、私のファイルはmyアレイは..gulp-uglifyファイルの配列が順番に実行されない

コード:

var gulp = require('gulp'); 
var gulpConcat = require('gulp-concat'); 
var gulpPlumber = require('gulp-plumber'); 
var gulpSourceMaps = require('gulp-sourcemaps'); 
var gulpUglify = require('gulp-uglify'); 

var pathSource = 'web/bundles/sf'; 
var pathSourceJs = pathSource + '/js'; 

var pathTarget = 'web/bundles/sf/build'; 
var pathTargetJs = pathTarget + '/js'; 

var filesJs = [ 
    pathSourceJs + '/jquery.js', 
    pathSourceJs + '/jquery1.7.2.js', 
    pathSourceJs + '/jquery.themepunch.plugins.min.js', 
    pathSourceJs + '/jquery.themepunch.revolution.min.js', 
    pathSourceJs + '/jquery.stellar.js', 
    pathSourceJs + '/custom.js', 
    pathSourceJs + '/jquery.jcarousel.min.js', 
    pathSourceJs + '/waypoints.js', 
    pathSourceJs + '/jquery.easypiechart.min.js', 
    pathSourceJs + '/nimble.js', 
    pathSourceJs + '/scrollspy.js', 
    pathSourceJs + '/jquery.fancybox.pack.js', 
    pathSourceJs + '/jquery.appear.js', 
    pathSourceJs + '/bootstrap.js', 
    pathSourceJs + '/counters.js', 
    pathSourceJs + '/slider.js', 
    pathSourceJs + '/revolution.js', 
    pathSourceJs + '/contact.js', 
    pathSourceJs + '/html5shiv.js', 
    pathSourceJs + '/respond.min.js' 
]; 

gulp.task('minify-javascript', function() { 
    return gulp.src(filesJs, {base: pathSource + '/'}) 
     .pipe(gulpPlumber(function(error) { 
      console.log(error.toString()); 
      this.emit('end'); 
     })) 
     .pipe(gulpSourceMaps.init()) 
     .pipe(gulpConcat(outputFileNameJs)) 
     .pipe(gulpUglify()) 
     .pipe(gulpSourceMaps.write('.')) 
     .pipe(gulp.dest(pathTargetJs)); 
}); 

出力ファイルがこの順(悪い順)に縮小される代わりfilesJsアレイで定義された順序の:

"sources": 
[ 
    "js/slider.js", 
    "js/contact.js", 
    "js/bootstrap.js", 
    "js/jquery.js", 
    "js/jquery1.7.2.js", 
    "js/jquery.themepunch.plugins.min.js", 
    "js/jquery.themepunch.revolution.min.js", 
    "js/jquery.stellar.js", 
    "js/custom.js", 
    "js/jquery.jcarousel.min.js", 
    "js/waypoints.js", 
    "js/jquery.easypiechart.min.js", 
    "js/nimble.js", 
    "js/scrollspy.js", 
    "js/jquery.fancybox.pack.js", 
    "js/jquery.appear.js", 
    "js/counters.js", 
    "js/revolution.js", 
    "js/html5shiv.js", 
    "js/respond.min.js" 
] 

連結は、オーダーであります、ミニフィーではありませんカチオン。

私はあなたの助け

答えて

0

を事前になぜ...

おかげで、あなたのjsファイルがお互いに依存関係を持っている場合は、gulpUglifyはおそらく再手配いたします順序を理解していません。

機能の巻き上げを無効にしてみてください:

.pipe(gulpUglify({ 
     compress: {hoist_funs: false} 
    })) 
関連する問題