2016-03-03 49 views
0

我的文件夾結構觀看咖啡文件,只需要使用文件名作爲目標

app/tool_1/js/myfile.coffee 
app/tool_2/js/myfile2.coffee 

...

我想這些文件編譯成一個目錄:

server/jsfolder/ 

Gruntfile.coffee

module.exports = (grunt) -> 
    grunt.initConfig 
     watch: 
      tools_coffee: 
       files: [ "app/**/*.coffee" ] 
       tasks: [ "newer:coffee:tools" ] 


     coffee: 
      tools: 
       expand: true 
       cwd: "app" 
       src: [ "**/*.coffee" ] 
       dest: "server/jsfolder" 
       ext: ".js" 

問題

整個路徑將被複制到DEST:

server/jsfolder/tool_1/js/myfile.js 

我想要的結果是這樣的:

server/jsfolder/myfile.js 

對此有任何解決方案?

我使用grunt-newer和grunt-watch。

回答

0

有一個函數重命名名稱可以覆蓋。

0

要回答你的問題,我相信你需要flatten選項,它會從你的dest目錄中刪除源路徑。

重命名,來回答你的答案,是很酷,看起來像這樣:

dest: 'foo/', 
    rename: function(dest, src) { 
     return dest + src.replace('foo', 'bar') 
    }, 
}