2011-09-07 72 views
26

我正在做一些教程,我正在用CoffeeScript編寫所有東西。然後我必須編譯爲JS,然後在node.js中執行。有沒有辦法直接做到這一點?我可以直接從node.js運行.coffee文件嗎?

+0

請參閱Trevor Burnham對[此問題]的回答(http://stackoverflow.com/questions/4679782/can-i-use-coffeescript-instead-of-js-for-node-js) –

回答

33

如果你有NPM,用它來從一個節點提示安裝的CoffeeScript:http://jashkenas.github.com/coffeescript/#installation

然後,從節點提示,你可以簡單地使用咖啡命令來執行:

coffee <yourcoffeescriptfile>.coffee 

而且,剛剛編譯,通過-c標誌:

coffee -c <yourcoffeescriptfile>.coffee 
+8

另請注意,您如果你已經運行require('coffee-script')'(在運行時你可以免費獲得),那麼你可以從Node模塊'require('./foo')'引入'foo.coffee'來自'coffee'命令的節點);它爲'require'函數添加了一個鉤子。因此,在Node應用程序中混合和匹配'.coffee'和'.js'文件非常簡單。 –

+0

有關使用'-c'的更多信息:編譯結果將保存到與輸入文件位於同一文件夾中具有相同文件名根的'.js'文件,除非使用'-o'來指定不同的夾。使用'-p'來代替將結果JavaScript打印到'stdout';運行'咖啡-h'來查看所有選項。 – mklement0

+0

回購已更名爲'coffeescript',所以鏈接應該是https://github.com/jashkenas/coffeescript/#installation –

56

當然可以。

coffee source.coffee -n 

它會直接運行Node而不生成任何.js文件。

Reference

更新: 咖啡現在也支持--nodejs。以上做法與

coffee source.coffee --nodejs 

但是,是的,-n是方式更短。

+0

這是我想要的答案,謝謝 – mko

+0

糟糕!我已經將它改回到投票 – mko

+0

哈哈,我的壞。希望它有幫助。我會回覆這個評論。 – yujingz

相關問題