2013-05-25 97 views

回答

2
coffee --watch --compile . 

手錶在.文件的修改和編譯他們,因爲他們改變。由於您使用expressjs我想你也想盡快重新啓動服務器的重新編譯發生:

coffee --compile --watch . &; nodemon server.js 

它採用https://github.com/remy/nodemon

3

有許多的方式來完成你想要什麼做。我知道的兩個最簡單的:

  1. 使用connect-assets模塊。這背後的想法是,你有一個/assets文件夾在根目錄中,你可以用express.static來實例化它,就像你通常會用/public文件夾一樣。在那裏,你還有兩個文件夾:/js/css。您的CoffeeScript進入您的/js文件夾。然後,從您的視圖模板中,請撥打js('yourfile')。這是一個非常簡單的模塊,但不是最主張的資產管道。使用asset-rack。儘管不像連接資產那麼容易掌握,但它非常靈活並且易於擴展。它將是Rails資產管道最接近的比較器,並且被大多數流行的JS框架(如Sails.js)所使用。

不過,我真的建議您從資產上的動態編譯避免,因爲它可以真正耗盡服務器的性能。

使用構建系統進行文件保存編譯會更好 - CoffeeScript隨附Cake,因此您可以在Cakefile中定義一個watch/compile/build/concatenate步驟,以及編譯所需的所有內容保存文件是在更改任何代碼之前輸入$ cake watch到終端。

或者,您可以編寫代碼,然後$ cake build。無論你喜歡什麼。我可能還補充說,cake-flour需要全部的寫出Cake任務的痛苦。

0

如果您只想通過HTTP訪問經過編譯的CoffeeScript文件,則還可以嘗試使用connect-coffee-script中間件。它對我來說工作得很好。

它比使用coffee --watch --compile有優勢,您不需要運行單獨的程序。