12

grunt-contrib-uglify在我的grunt 0.4.

我有以下任务:

uglify: {
  dist: {
    options: {
      sourceMap: 'dist/sm/sm.js'
    },
    files: grunt.file.expandMapping(['*.js'], 'dist/js', {
      cwd: 'dist/js'
    })
  }
},

可以看到,uglify 被配置为压缩多个文件,并且只指定了一个 source-map。(我无法找到指定多个源映射输出的方法)。

另外,uglify 会在压缩每个 js 文件后覆盖 soucemap。

如何配置此插件以输出我所有 js 文件的完整源映射?

4

3 回答 3

11

您可以在 sourceMap 中设置功能。

uglify: {
  options: {
      sourceMap: function(path) { return path.replace(/.js/,".map")} 
  },
  .....
于 2013-07-06T13:35:42.037 回答
3

在V0.4.0版本中,sourceMapBoolean超值的。使用动态构建生成具有多个.min.js文件的多个 sourceMap。

uglify: {
  options: {
    sourceMap: true
  },
  build: {
    files: [{
        expand: true,
        cwd: 'src/',
        src: '*.js',
        dest: 'build/',
        ext: '.min.js',
        extDot: 'first'
    }]
  }
}
于 2014-06-05T03:04:18.653 回答
0
options: {
  beautify: false,
  banner: 'lorem ipsum',
  mangle: false,
  sourceMap: true,
  compress: {
    conditionals: true,
    booleans: true,
    unused: true,
    sequences: true,
    dead_code: true,
    if_return: true,
    join_vars: true,
    drop_console: true
  }
},
min: {
  files: [{
    expand: true,
    cwd: '<%= config.destination.js %>',
    src: ['**/*.js', '!**/*.min.js'],
    dest: '<%= config.destination.js %>',
    ext: '.min.js'
  }]
}
于 2017-05-19T01:40:16.203 回答