我以为有办法做到这一点,我以前偶然发现了它。 我已经阅读了这些答案,但它们并不是我所说的:
Programmatically pass arguments to grunt task?
Accessing the process / environment from a grunt template
我也查看了咕噜咕噜的文档,但它不存在:
https://github.com/gruntjs/grunt/wiki/Configuring-tasks
有这样的语法吗?
grunt.task.run 'htmlmin:allFiles:collapseWhitespace=true'
答案 0 :(得分:53)
您可以使用该语法,但这意味着将这些参数传递给htmlmin任务:allFiles
,'collapse=true'
。
例如,给定以下任务:
grunt.registerTask('so', function(arg1, arg2) {
console.log(arg1 + ", " + arg2);
});
运行:
grunt so:barley:test=true
提供以下输出:
barley, test=true
还有其他方法可以传递常见问题解答中描述的参数/共享信息:How can I share parameters across multiple tasks?
--Options可能适用于您
跨多个任务共享参数的另一种方法是使用
grunt.option
。在此示例中,在命令行上运行grunt deploy --target=staging
将导致grunt.option('target')
返回“暂存”。