2014-09-01 97 views
0

我正在尋找一個工作配方,可以縮小我的AngularJS代碼,並仍然提供源地圖。目前我有這個吞嚥任務,但縮小將無法正常工作:Browserify配方AngularJS +源地圖+縮小

gulp.task('browserify', function(cb) { 
    var bundler = browserify({ 
      entries: [paths.browserEntry], 
      globals: false, 
      debug: !settings.PRODUCTION 
     }) 

    bundler 
     .bundle() 

     .on('error', cb) 
     .on('log', util.log) 

     .pipe(gulpif(!settings.PRODUCTION, mold.transformSourcesRelativeTo(paths.js))) 
     .pipe(source(paths.js)) 
     .pipe(buffer()) // because the next steps do not support streams 
     .pipe(concat('bundle.js')) 
     .pipe(gulpif(settings.server.minify.js, rename({suffix: '.min'}))) 
     .pipe(gulpif(settings.server.minify.js, uglify())) 
     .pipe(gulp.dest(paths.js)) 
     .on('end', function() { 
      cb() 
     }) 
}) 

任何線索?

+0

你想在grunt中看到一個例子嗎? :-) – 2014-09-07 04:40:44

+0

嗯,好吧。可能會有所幫助,並提供一些提示。 Thx – 2014-09-07 08:24:02

回答

1

您可能會在這裏看到一個example。該示例將輸出一個縮小的bundle.min.js和一個bundle.map。關鍵點,這使得示例工作:安裝debowerify

  • 安裝minifyify
  • 的package.json

    • - 添加變換屬性

      "browserify": { 
          "transform": [ 
           "debowerify" 
          ] 
          } 
      

      Gruntfile.js - 使用preBundleCB進行最小化工作

      preBundleCB: function (b) { 
          b.plugin(minifyify, 
           { output: './dist/bundle.map', 
           map:'bundle.map' 
           }); 
          } 
      

      希望這個例子對你有用。

    +0

    感謝您指向minifyify! – 2014-09-08 00:34:17