当我尝试创建许多uglify任务时,我会遇到错误。我必须评论并取消注释一项任务才能使一项任务正常工作。希望可以有人帮帮我。我需要两个使用此插件创建的sperate minified .js文件,但我无法弄明白。如果它可以在一个任务命令中创建两个任务,这将创建两个sperate缩小的.js文件,如下所述,这也是很好的。期待您的想法。
module.exports = function(grunt){
grunt.loadNpmTasks('grunt-contrib-uglify');
grunt.initConfig({
pkg: grunt.file.readJSON('package.json'),
uglify:{
t1:{
files:{
'build/scripts1.js' : ['abc.js', 'xc.js']
}
}
},
uglify:{
t2:{
files:{
'build/scripts2.js' : ['123.js', 63a5.js]
}
}
}
});
};
答案 0 :(得分:1)
您需要将Targets t1
和t2
添加到单个uglify
Task,如下所示:
<强> Gruntfile.js 强>
module.exports = function (grunt) {
grunt.loadNpmTasks('grunt-contrib-uglify');
grunt.initConfig({
pkg: grunt.file.readJSON('package.json'),
uglify:{
t1:{
files:{
'build/scripts1.js' : [ 'abc.js', 'xc.js' ]
}
},
t2:{
files:{
'build/scripts2.js' : [ '123.js', '63a5.js' ]
}
}
}
});
grunt.registerTask('default', ["uglify"]);
grunt.registerTask('foo', ["uglify:t1"]);
grunt.registerTask('quux', ["uglify:t2"]);
};
正在运行grunt
上面的Gruntfile.js
有三个registerTask,即; default
,foo
和quux
。
正在运行$ grunt
将同时运行目标t1
和t2
正在运行$ grunt foo
只会运行目标t1
。
正在运行$ grunt quux
只会运行目标t2
。
foo
和quux
都使用冒号表示法(即"uglify:t1"
和"uglify:t2"
)来仅引用其中一个目标。
default
任务仅引用uglify
,这将导致uglify
目标中的所有目标(无论多少)都在运行。