Documentação para Referência: https://github.com/gruntjs/grunt-contrib-uglify
O grunt-contrib-uglify é um plugin muito usado para minificar arquivos, havendo a necessidade do mesmo.
MINIFICAÇÃO
Para usar o grunt-contrib-uglify em seu projeto, é preciso digitar o comando abaixo via Shell.
npm install grunt-contrib-uglify --save-dev
No arquivo Gruntfile do seu projeto, adicione uma seção nomeada como uglify para que os objetos sejam passados dentro do método grunt.initConfig(). Confira um exemplo abaixo.
grunt.initConfig({
uglify : {
options : {
mangle : false
},
my_target : {
files : {
'assets/js/main.js' : [ 'assets/_js/scripts.js' ]
}
}
}
});
Esta é a tarefa principal: UglifyJS2, por isso, considero a documentação UglifyJS como leitura obrigatória para a configuração avançada.
Tipo: Boolean
Object
Valor padrão: {}
Ligar ou desligar deturpações com as opções padrão. Se um objeto é especificado, ele é passado diretamente para:
ast.mangle_names()
e ast.compute_char_frequency()
(imitando o comportamento de linha de comando).
Tipo: boolean
Object
Valor padrão: {}
Ativar ou desativar a compactação da fonte com opções padrão. Se um objeto é especificado, ele é passado como opção para
UglifyJS.Compressor()
.
Tipo: boolean
Valor padrão: false
Se for verdade, um arquivo de origem mapa será gerado no mesmo diretório que o arquivo dest. Por padrão, ele terá o mesmo nome de base como a:
dest
arquivo, mas com a extensão .map