Gruntjs 我能告诉UglifyJS只压缩和损坏所有文件,除了一些我只想连接的文件吗?
是否可以指定我希望压缩和损坏的文件的名称和数组(默认丑陋行为),但也可以指定不应触摸的文件列表,只是连接Gruntjs 我能告诉UglifyJS只压缩和损坏所有文件,除了一些我只想连接的文件吗?,gruntjs,uglifyjs,Gruntjs,Uglifyjs,是否可以指定我希望压缩和损坏的文件的名称和数组(默认丑陋行为),但也可以指定不应触摸的文件列表,只是连接 谢谢。我相信您需要两个数组,一个是要压缩和损坏的文件列表,另一个是要连接的文件列表 压缩和损坏的阵列将用于Uglify 连接的数组将在Grunt Contrib Concat上使用。您可以用不同的方法解决此问题。我发布了一个扩展示例来说明我们可以做什么: uglify: { doAll: { options: { banner: '// <
谢谢。我相信您需要两个数组,一个是要压缩和损坏的文件列表,另一个是要连接的文件列表 压缩和损坏的阵列将用于Uglify
连接的数组将在Grunt Contrib Concat上使用。您可以用不同的方法解决此问题。我发布了一个扩展示例来说明我们可以做什么:
uglify: {
doAll: {
options: {
banner: '// <%= pkg.name %> - v<%= pkg.version %> - ' + '<%= grunt.template.today("yyyy-mm-dd HH:mm:ss") %>\n\n',
mangle: {
except: [ // mangle is true for all else besides the specified exceptions
'src/input-d.js',
'src/input-e.js',
'src/input-f.js'
]
},
preserveComments: 'some'
},
files: 'dest/output.min.js': [ // concatenation, uglification (mangle) with exceptions, block comments preserved, minification and a banner
'src/input-a.js',
'src/input-b.js',
'src/input-c.js',
'src/input-d.js',
'src/input-e.js',
'src/input-f.js'
]
},
concatenateOnly: {
options: {
compress: false,
mangle: false,
preserveComments: 'all'
},
files: 'dest/output.js': [ // only concatenation
'src/input-a.js',
'src/input-b.js',
'src/input-c.js',
'src/input-d.js',
'src/input-e.js',
'src/input-f.js'
]
}
}
…或者你可以通过组合我上面粘贴的一些设置来完成一项任务,比如使用
选项.mangle.except
对你有利。我试图避免这种情况,因为它会创建临时文件,我必须在以后使用grunt clean删除这些文件。哇,太棒了。忘记了except选项。你在引导我通过咕噜声,我明白了。:)这个解决方案是完美的。除了一个小问题,由于一个丑陋的JS bug,compress:false
参数可能无法工作:。
watch: {
js: {
files: ['config/*.js', 'app/js/**/*.js'],
tasks: ['jshint', 'jasmine', 'uglify:concatenateOnly', 'uglify:doAll']
}
}