我在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配置为压缩多个文件,并且只指定了一个源映射。 (我无法找到指定多个源图输出的方法)。
此外,uglify在压缩每个js文件后会覆盖源图。
如何配置此插件以输出所有js文件的完整源映射?
答案 0 :(得分:11)
您可以在sourceMap设置功能。</ p>
uglify: {
options: {
sourceMap: function(path) { return path.replace(/.js/,".map")}
},
.....
答案 1 :(得分:2)
在V0.4.0版本中,sourceMap
的值为Boolean
。使用动态构建生成包含多个.min.js
文件的多个sourceMap。
uglify: {
options: {
sourceMap: true
},
build: {
files: [{
expand: true,
cwd: 'src/',
src: '*.js',
dest: 'build/',
ext: '.min.js',
extDot: 'first'
}]
}
}
答案 2 :(得分: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'
}]
}