grunt-contrib-copy:多个复制任务

时间:2015-04-27 05:22:23

标签: gruntjs grunt-contrib-copy

只是想知道是否可以将“复制”任务设置为选择性副本?比如,如果一个任务想要将某些文件作为目标进行复制,而另一个任务可能想要定位其他任务。

我看到所有示例中都使用了'main',但是在使用grunt-multi-dest之外我无法找到能够使用其他名称的引用,或其他方法来实现此目的

    copy: {
      main: {
        files: [
          {
            cwd: 'src_static/img/',
            src: ['**'],
            dest: '../mainProject/assets/img/'
          }
        ],
      onlyIcons: {
        files: [
          {
            cwd: 'src_static/img/icons/',
            src: ['**'],
            dest: '../mainProject/assets/img/icons/'
          }
        ],
      }
    }
    grunt.registerTask('copy-all', ['copy']);
    grunt.registerTask('copy-icons', ['copy:onlyIcons']);

虽然已经关闭,但我被要求在grunt-contrib-copy网站上引用我发布的问题:https://github.com/gruntjs/grunt-contrib-copy/issues/230#issuecomment-96467261

感谢。 -Keith

2 个答案:

答案 0 :(得分:12)

对于现在遇到这种情况的人来说,这确实有效:

grunt.registerTask('copy-all', ['copy']);
grunt.registerTask('copy-icons', ['copy:onlyIcons']);

这是关于KDCinfo的初始Gruntfile配置:

copy: {
    main: {
        files: [{
            cwd: 'src_static/img/',
            src: ['**'],
            dest: '../mainProject/assets/img/'
        }]
    },
    onlyIcons: {
        files: [{
            cwd: 'src_static/img/icons/',
            src: ['**'],
            dest: '../mainProject/assets/img/icons/'
        }],
    }
}

并显示copy.maincopy.onlyIcons必须在copy:main内被称为copy:onlyIconsgrunt.registerTask()

答案 1 :(得分:0)

看起来grunt-multi-dest似乎是明显的赢家。即便如此,仅仅包括和使用它并没有太大的缺点。它填补了这个空白。