我使用concat将JS文件合并到一个文件中并使用uglify来最小化JavaScript。如何创建使用源JS文件的sourcemaps文件?
我目前的gruntfile:
concat: {
options: {
// define a string to put between each file in the concatenated output
separator: ';'
},
dist: {
// the files to concatenate
src: ['<%= config.src %>/js/**/*.js'],
// the location of the resulting JS file
dest: '<%= config.dist %>/js/main.js'
}
},
uglify: {
dist: {
files: {
'<%= config.dist %>/js/main.min.js': ['<%= concat.dist.dest %>']
}
}
},
答案 0 :(得分:54)
您需要在concat
和uglify
任务上启用源地图,并且必须为uglify任务指定sourceMapIn
选项。
这是一个示例grunt配置:
concat : {
options : {
sourceMap :true
},
dist : {
src : ['www/js/**/*.js'],
dest : '.tmp/main.js'
}
},
uglify : {
options : {
sourceMap : true,
sourceMapIncludeSources : true,
sourceMapIn : '.tmp/main.js.map'
},
dist : {
src : '<%= concat.dist.dest %>',
dest : 'www/main.min.js'
}
}
答案 1 :(得分:-2)
根据grunt-contrib-uglify文档,您可以启用源代码生成作为uglify进程的一部分。
您的uglify配置看起来像:
uglify: {
dist: {
files: {
'<%= config.dist %>/js/main.min.js': ['<%= concat.dist.dest %>']
},
options: {
sourceMap: true
}
},