2013-01-04 89 views
0

目前我使用它來把它編譯成一個文件:編譯CoffeeScript中有Cakefile

task 'CurrentVillage', 'Build Current Vilage', -> 
    remaining = appFiles.length 
    appContents = new Array remaining 
    for file, index in appFiles then do (file, index) -> 
    fs.readFile "media/coffee/#{file}.coffee", 'utf8', (err, fileContents) -> 
     throw err if err 
     appContents[index] = fileContents 
     process() if --remaining is 0 
    process = -> 
    fs.writeFile 'media/coffee/frontend/VillageCanvas.coffee', appContents.join('\n\n'), 'utf8', (err) -> 
     throw err if err 

我不把它直接編譯成JavaScript:S

回答

1

您需要在定義您的任務Cakefile,然後調用Cakefile。將Cakefile放在同一目錄中後,從您的咖啡文件所在的目錄中運行cake build。這是一個Cakefile的簡單模板。 http://twilson63.github.com/cakefile-template/

build = (watch, callback) -> 
    if typeof watch is 'function' 
    callback = watch 
    watch = false 

    options = ['-c', '-b', '-o', 'lib', 'src'] 
    options.unshift '-w' if watch 
    launch 'coffee', options, callback 
+0

這個編譯src中只有文件的問題,你可以使用grunt.jsgrunt-coffee plugin替代。我想編譯組合的代碼。我不想保存組合的咖啡文件。 – Kani

+0

把'Cakefile'作爲你目錄的根,然後從那裏運行'cake build'。 –

1

什麼康納說(從我得到了一個給予好評):如下所述它已經寫在構建功能。

,如果你想使用「atthemomentstandardjavascriptbuildtool」 ;-)

相關問題