2015-04-27 76 views
9

想知道是否可以將「複製」任務設置爲選擇性複製?比如說,如果一項任務想要將某些文件作爲複製目標,而另一項任務可能需要將其他目標作爲目標。grunt-contrib-copy:多個複製任務

我看到了「主」在所有的例子使用,但我找不到參考,如果其他的名字能夠被使用,或者另一種方式來做到這一點,利用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']);
之外

雖然封閉,有人問我引用我張貼的咕嚕-contrib請複製網站上的一個問題一個問題:https://github.com/gruntjs/grunt-contrib-copy/issues/230#issuecomment-96467261

感謝。 -Keith

回答

0

看起來像grunt-multi-dest似乎是明顯的贏家。即使這樣,包含和使用它也沒有太大的不利之處。它很好地填補了這個空白。

9

對於現在任何人都碰到這個即將到來,這其實工作原理:

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:maincopy:onlyIconsgrunt.registerTask()