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 ☆

如果需要的配置属性有一个或多个不存在、值为nullundefined,当前task将失败。此方法可以指定一个或多个字符串、配置属性数组作为参数。

grunt.config.requires(prop [, prop [, ...]])

此方法在task内部以 this.requiresConfig 形式调用。