Grunt 配置任务.pdf
文本预览下载声明
Grunt 配置任务
配置任务
这个指南解释了如何使⽤ Gruntfile 来为你的项⽬配置task 。如果你还不知
道 Gruntfile 是什么,请先 读 快速⼊门 指南并看看这个 Gruntfile 实例。
Grunt配置
Grunt的task配置都是在 Gruntfile 中的grunt .initConfig⽅法中指定的。此配置主要是以
任务名称命名的属性,也可以包含其他任意数据。⼀旦这些代表任意数据的属性与任
务所需要的属性相冲突,就将被忽略。
此外,由于这本⾝就是JavaScript ,因此你不仅限于使⽤JSON ;你可以在这⾥使⽤任
何有效的JavaScript 。必要的情况下,你甚⾄可以以编程的⽅式⽣成配置。
grunt.initConfig({
concat: {
// 这⾥是concat任务的配置信息。
},
uglify : {
// 这⾥是uglify任务的配置信息
},
// 任意数据。
my_property : whatever,
my_src_files: [foo/ .js, bar/ .js],
});
任务配置和⽬标
当运⾏⼀个任务时,Grunt会⾃动查找配置对象中的同名属性。多任务 (multi-task )
可以通过任意命名的“ ⽬标 (target )”来定义多个配置。在下⾯的案例中,concat任务
有名为foo和bar两个⽬标,⽽uglify任务仅仅只有⼀个名为bar ⽬标。
grunt.initConfig({
concat: {
foo: {
// concat task foo target options and files go here.
},
bar: {
// concat task bar target options and files go here.
},
},
uglify : {
bar: {
// uglify task bar target options and files go here.
},
},
});
同时指定任务 (task )和⽬标 (target ),例如grunt concat:foo或者grunt concat:bar ,将
只会处理指定⽬标 (target )的配置,⽽运⾏grunt concat将遍历所有⽬标 (target )并
依次处理。注意,如果⼀个任务使⽤grunt .task .rename ask重命名过,Grunt将在配置
对象中查找以新的任务名命名的属性。
options属性
在⼀个任务配置中,options属性可以⽤来指定覆盖内置属性的默认值。此外,每⼀个
⽬标 (target )中还可以拥有⼀个专门针对此⽬标 (target )的options属性。⽬标
(target )级的平options将会覆盖任务级的options 。
options对象是可选的,如果不需要,可以忽略。
grunt.initConfig({
concat: {
options: {
// 这⾥是任务级的Options,覆盖默认值
},
foo: {
options: {
// foo target options may go here, overriding task-level
},
},
bar: {
// No options specified; this target will use task-level opt
},
},
});
⽂件
由于⼤多的任务都是执⾏⽂件操作,Grunt有⼀个强⼤的抽象层⽤于声明任务应该操作
哪些⽂件。这⾥有好⼏种定义src-dest(源⽂件- ⽬标⽂件)⽂件映射的⽅式,均提供了不
同程度的描述和控制操作⽅式。任何⼀种多任务 (multi-task )都能理解下⾯的格式,
所以你只需要选择满⾜你需求的格式就⾏。
所有的⽂件格式都⽀持src和dest属性,此外Compact[简洁]和Files Array[⽂件数组]
格式还⽀持以下⼀些额外的属性:
filter 它通过接受任意⼀个有效的fs.Stats⽅法名或者⼀个函数来匹配src⽂件路径
并根据匹配结果返回true或
显示全部