grunt.config
grunt.config
从 Gruntfile
中获取针对当前项目的配置数据。
注意,任何标记为 ☃ (unicode snowman) 的方法也是可以直接通过 grunt
对象访问的;任何标记为 ☆ (white star) 的方法都可以在task内部通过 this
对象访问的。请知晓。
初始化配置数据
注意,下面列出的方法也可以通过
grunt
对象访问,访问形式为
grunt.initConfig。
grunt.config.init ☃
为当前项目初始化一个配置对象。其中传入的 configObject
参数可以用在后续的task中,可以通过 grunt.config
方法访问。几乎每个项目的 Gruntfile
都会调用此方法。
grunt.config.init(configObject)
注意,任何 <% %> 模板字符串只会在取到配置数据后才被处理。
下面的案例展示了针对 grunt-contrib-jshint
插件 中的 jshint
task的配置数据:
grunt.config.init{
jshint: {
all: ['lib/*.js', 'test/*.js', 'Gruntfile.js']
}
}
查看 Getting started 指南可以获取更多的配置案例。
此方法还可以以
grunt.initConfig
的形式访问。
获取配置数据
grunt.config
从项目的 Grunt 配置中获取或者设置一个值。这个方法作为其他方法的别名;如果传递两个参数,grunt.config.set
被调用,另一方面grunt.config.get
也被调用。Get or set a value from the project's grunt configuration. This method serves as an alias to other methods; if two arguments are passed, grunt.config.set
is called, otherwise grunt.config.get
is called.
grunt.config([prop [, value]])
grunt.config.get
grunt.config.get([prop])
grunt.config.process
grunt.config.process(value)
grunt.config.getRaw
grunt.config.getRaw([prop])
grunt.config.set
给当前项目的 Grunt 配置中的某个属性设置一个值。
grunt.config.set(prop, value)
注意,任何 <% %> 模板字符串只会在取到配置数据后才被处理。
grunt.config.escape
忽略给定的propString
中的.
点号。这应该用于包含点号的属性名。除了 给定的propString
中的.
点,这应该用于包含点的属性名称。
grunt.config.escape(propString)
grunt.config.merge
Added in 0.4.5
grunt.config.merge(configObject)
您可以使用此方法将配置选项,目标等附加到已定义的任务,例如:
grunt.config.merge{
watch: {
files: ["path/to/files"],
tasks: ["task"]
}
}
数组值根据其索引进行合并。请考虑以下代码:
grunt.initConfig{
jshint: {
files: ['Gruntfile.js', 'src/**/*.js'],
}
var config = {
jshint: {
files: ['hello.js'],
}
};
grunt.config.merge(config
它将导致如下所示的配置:
jshint: {
files: ['hello.js', 'src/**/*.js'],
}
总之,variable()中files
定义的数组的第一个值会覆盖配置call()中指定的第一个值。confighello.jsinitConfigGruntfile.js
需要配置数据
注意,下面列出的方法都可以在task内部通过 this
对象访问,访问形式为 this.requiresConfig
。
grunt.config.requires ☆
如果需要的配置属性有一个或多个不存在、值为null
或 undefined
,当前task将失败。此方法可以指定一个或多个字符串、配置属性数组作为参数。
grunt.config.requires(prop [, prop [, ...]])
此方法在task内部以
this.requiresConfig
形式调用。