Gruntjs 从另一个任务创建的Grunt Alter模板

Gruntjs 从另一个任务创建的Grunt Alter模板,gruntjs,Gruntjs,我有一个任务在Grunt中,用于清理,另一个任务是复制。基本上,我在一个地方清理一些东西,然后换上新的东西,去同样的地方。我不知道如何映射我的copy.files.dest,以便它使用clean.env.files.src中的值,但会切换修饰符。因此: // Project settings yeoman: { // configurable paths app: 'app', dist: 'dist', prod:'L:/dist'

我有一个任务在Grunt中,用于
清理
,另一个任务是
复制
。基本上,我在一个地方清理一些东西,然后换上新的东西,去同样的地方。我不知道如何映射我的
copy.files.dest
,以便它使用
clean.env.files.src
中的值,但会切换修饰符。因此:

// Project settings
    yeoman: {
      // configurable paths
      app: 'app',
      dist: 'dist',
      prod:'L:/dist'
    }
// the prod sub-block of the clean task configuration
 prod:{
        files:[{
            dot:true,
            src:[
                '<%= yeoman.prod% >/scripts',
                 '<%= yeoman.prod% >/styles',
                 '<%= yeoman.prod% >/views',
                 '<%= yeoman.prod% >/*.html',
                 '<%= yeoman.prod% >/images'        

            ]
        }]
      }

//the prod sub-block of the copy task configuration
      prod:{
        files:[{
            expand:true,
            dot:true,
            cwd:'<%= yeoman.dist  %>',
            dest:'<%= yeoman.prod  %>',
            //can i use the result files from this path, but use yeoman.dist instead of yeoman.prod?
            src:['<%= clean:prod:files:src %>'] 
        }]
      }
//项目设置
约曼:{
//可配置路径
应用程序:“应用程序”,
地区:'地区',
产品:'L:/dist'
}
//clean任务配置的prod子块
产品:{
档案:[{
多特:没错,
src:[
“/scripts”,
“/styles”,
“/views”,
“/*.html”,
“/图像”
]
}]
}
//复制任务配置的prod子块
产品:{
档案:[{
是的,
多特:没错,
cwd:“”,
目标:'',
//我可以使用此路径中的结果文件,但使用yeoman.dist而不是yeoman.prod吗?
src:['']
}]
}
我想使用
中的模板,但使用另一种配置(换句话说,该任务使用
yeoman.prod
,而我希望列出所有相同的文件,要执行某些操作,需要从
yeoman.dist
中进行src)

有没有办法通过grunt语法来实现这一点,或者我必须依赖我的(未显示)自定义函数吗?


编辑,删除对父任务的引用,因为它们并不反映我的代码的实际外观。

请记住,Gruntfiles是javascript。它们必须用有效的javascript编写

clean.prod:{}
不是有效的javascript

Grunt模板中使用的点符号,
只是一种通过javascript对象进行翻译的模板格式,而不是javascript语言本身的一部分

因此,请将配置更改为:

clean: {
  prod: {
    src: [ /* file patterns here */ ]
  }
}
然后使用:
访问
clean:prod
任务的
src
属性

我已经从
文件
数组中取出了配置,就好像在目标
prod
中只有一个
src/dest
块一样,它是不需要的。但是如果您想从配置中的该位置访问值,您必须记住
文件
是一个数组。因此,使用模板访问数组的第一项将是:
。但是,除非需要,否则不使用
文件
数组要简单得多


有关javascript对象和grunt模板的更多信息,请参阅。

删除了引用。我实际上没有使用
clean.prod:{}
。我的系统工作正常,只是想改进配置,使其更易于维护,现在我正在使用不同的方法来实现这一点。如果你有什么建议,请告诉我。我认为最好的对象之一的资源是John Resig,[如何成为JavaScript忍者]()。好书。在此之前,我可能已经阅读了其他4本关于OOJavaScript的手册,这是迄今为止最好的。遗憾的是,当我第一次选择js时,它不存在。你编辑的配置仍然无效。祝你好运!现在,我的客户通过一个更复杂的外部模板解决方案来实现这个问题。