2017-07-16 85 views
0

我正在使用「grunt-contrib-copy」:「^ 1.0.0」,並且複製的二進制文件被破壞,請看看我的grunt配置並在此幫助我。grunt-contrib-copy正在破壞二進制文件

copy: { 
    options: { 
     // exclude binary format from the processContent function 
     processContentExclude: [ 
      '**/*.{png,gif,jpg,ico,psd,ttf,otf,woff,svg}' 
     ] 
    }, 
    main: { 
     files: [{ 
      expand: true, 
      cwd: '<%= options.src %>', 
      src: ['**/*.json', '**/*.htm*', '**/*.png'], 
      dest: '<%= options.targets.dist %>' 
     }, 
      { 
       expand: true, 
       cwd: '<%= options.resources %>', 
       src: ['**/*.png'], 
       dest: '<%= options.targets.dist %>', 
       options: { 
        options: { 
         processContentExclude: ['**/*.{png,gif,jpg,ico,psd}'] 
        } 
       } 
      }] 
    } 
}, 

回答

0

[email protected]processContentExclude選項已更名爲noProcess。你options對象應該是:

// ... 
options: { 
    // ... 
    noProcess: [ // <-- Renamed from processContentExclude 
     '**/*.{png,gif,jpg,ico,psd,ttf,otf,woff,svg}' 
    ] 
}, 
// ... 

我還以爲別的地方在你的配置,(雖然在OP不含稅),你可能會使用processContent選項 - 因此腐敗。請注意,processContent選項已重命名爲process,因此您需要重命名該選項。例如。

// ... 
options: { 
    // ... 
    process: function(foo, baz) { // <-- Renamed from processContent 
     // ...   
    }, 
    // ...  
} 
+0

我試過你的解決方案,但它仍然給出同樣的問題,破壞文件。 這是我更新的配置。 副本:{ 主:{ 文件:[{ 擴大:真, CWD: '<%= options.resources%>', SRC:[ '**/* PNG'], DEST:' <%= options.targets.dist%>', 選項:{ noProcess:['**/*。{png,gif,jpg,ico,psd}'] } }] –

+0

您應該真的編輯/用更新後的配置更新您的問題,而不是將其作爲評論發佈。無論如何,你的glob模式在評論中發佈的代碼中是不正確的。嘗試將'src:['* /。png']'設置爲'src:['**/*。png']'並設置'noProcess:['* /。{png,gif,jpg,ico,psd }']'到'noProcess:['**/*。{png,gif,jpg,ico,psd}']'(注意* /。'部分已經改爲**/*。'in兩個例子)。另外,如果只複製'.png'文件,那麼'noProcess'可以配置爲'noProcess:['**/*。png']' - 實際上並不需要包含所有其他文件後綴。 – RobC