2014-09-01 34 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