grunt.config - acecode/grunt GitHub Wiki
访问在Gruntfile中定义的项目相关的配置数据
请注意标注了☃(unicode雪人)的方法可以直接从grunt
对象访问,标注了☆(白星)的方法可以在任务中通过this
访问,
注意这个方法也可以通过grunt
对象的grunt.initConfig
调用
用当前对象初始化一个配置对象,这个配置对象configObject
会被任务使用,也可以通过grunt.config
来操作。基本上每个项目的gruntfile都会调用这个方法。
grunt.config.init(configObject)
注意任何配置项中类似<% %>
的模板字符串只会在检索时被解析
这个例子是grunt-contrib-jshint 插件 的jshint
任务的相关配置:
grunt.config.init({
jshint: {
all: ['lib/*.js', 'test/*.js', 'Gruntfile.js']
}
});
查看 基础入门 指导以查看更多配置实例.
这个方法也可以通过grunt.initConfig
调用.
以下方法都用来操作配置数据,参数形式可以是类似'pkg.author.name'
点分隔的字符串,或是像['pkg', 'author', 'name']
这样的参数名数组
注意如果参数名中含有点.
, 必须加入转义斜线,比如'concat.dist/built\\.js'
。如果是数组形式给出的,grunt会在内部用grunt.config.escape
处理
取出或者设置项目的grunt配置。这个方法是其他方法的别名;如果提供两个参数,实际调用grunt.config.set
,否则调用grunt.config.get
。
grunt.config([prop [, value]])
取得项目的grunt配置。如果给定prop
,对应的属性值会被返回,或者用null
来代表未定义的属性;如果没给出prop
,将返回整个配置对象的副本。模板字符串将被grunt.config.process
方法递归处理。
grunt.config.get([prop])
遇到类似<% %>
的模板会在配置对象上递归展开(运用grunt.tempPlate.process
方法),返回最终结果。grunt.config.get
自动使用本方法,但grunt.config.getRaw
不做这种处理。
grunt.config.process(value)
如果任何递归时遇到简单的模板字符串,类似'<%= foo %>'
或者 '<%= foo.bar %>'
,而对应的foo
或 foo.bar
属性不是字符串(也不是null
或者 undefined
),将展开成实际值。这个特性与grunt的任务系统自动降维数组配合是很有用的
从项目的grunt配置中读取原始属性值,不处理类似<% %>
的模板字符串。如果给定prop
,对应的属性值会被返回,或者用null
来代表未定义的属性;如果没给出prop
,将返回整个配置对象的副本。
grunt.config.getRaw([prop])
设置一个grunt配置项
grunt.config.set(prop, value)
注意任何类似<% %>
的模板字符串只在检索配置数据时被处理
编码给出的propString
中的点.
。应该在属性名含有点时使用这个函数
grunt.config.escape(propString)
注意下面列出的方法也可以在任务中通过this
对象的this.requiresConfig
来调用。
如果依赖的一个或多个配置项不存在,为null
或undefined
,将直接导致任务失败。依赖的配置项参数可以通过给出单个或多个字符串,或是数组来给出
grunt.config.requires(prop [, prop [, ...]])
这个方法也可以在任务中通过this.requiresConfig
来调用