我有一个咕噜文件如下,Grunt和Uglify,运行多个任务?
module.exports = function(grunt) {
grunt.initConfig({
pkg: grunt.file.readJSON('package.json'),
'uglify': {
options: {
preserveComments: 'some',
},
my_target: {
files: {
'site/assets/js/js_code.js': [
/* Libs */
'/js/libs/jquery_2.2.4.min.js',
'/js/libs/underscore_1.8.3.min.js',
'/js/libs/backbone_1.3.3.min.js',
/* Plugins */
'/js/plugins/dropzone.min.js',
'/js/plugins/jquery.magnific-popup.min.js',
'/js/plugins/jquery.validate.min.js',
/* Build JS Functions */
'/js/functions.js',
'/js/builder.js',
]
}
}
},
'sass': {
dist: {
options: {
style: 'expanded',
compass: true,
},
files: {
'assets/css/styles.css': '/scss/styles.scss',
} //End of Files
} //End of Dist.
}, //End of SASS
watch: {
'JS': {
files: ['/js/*.js'],
tasks: ['uglify'],
options: { spawn: false },
},
'Scss': {
files: ['/scss/*.scss'],
tasks: ['sass'],
options: { spawn: false },
}
}
});
grunt.loadNpmTasks('grunt-contrib-uglify');
grunt.loadNpmTasks('grunt-contrib-sass');
grunt.loadNpmTasks('grunt-contrib-watch');
};
我不能工作了,我已经做了很多的研究,但不能似乎找到一个答案,就是如何建立丑化有不止一个任务。
我知道我可以设置多个文件目标但我不希望我的手表运行这些。所以我想要设置一个'libs.js','plugins.js'和'my_code.js'。但我不希望每次编辑/更新代码时运行库和插件。但是什么能够以某种方式设置它,以便我可以运行如grunt uglify-libs
。
这样可行吗?
非常感谢
UPDATE
按照下面的评论,我尽量详细解释。 现在,我运行grunt watch
它返回一个输出文件。
我想改变这个有三个输出文件,一个是libs文件,一个是插件,另一个是我写的代码。
所以当我运行Grunt watch
时,那只会看我的代码中的文件,而不是任何libs或插件文件。
然后我想能够运行,Grunt uglify-libs
,这将然后使libs文件。
插件也一样,但是像Grunt uglify-plugs
。
所以基本上我想要三个uplify任务,但只有其中一个在watch函数中运行。
希望能帮助解释更多。
非常感谢。
对不起,我更多地解释 - 我很不好,在询问的问题:( - 我跑“咕噜手表”的,现在,我把所有的JS文件放到一个文件中,但我想分割文件,一个用于我的所有库,插件和我写的代码,但我只希望我的watch命令在我的代码上运行,而不是concat /缩小libs或者插件文件,我在其他项目中把文件溢出了,所以我知道这是可行的,但我只希望手表能够运行在我编写的代码上,但仍然可以运行诸如'grunt uglify-libs '并且那一个命令会更新我的libs文件。 –
@ C0ol_Cod3r对不起,我根本就没有得到它:( – MattDiMu
我已经用更新更新了问题,希望能解释更多一点我希望能够做到 –