我完全不熟悉所有節點shenanigans,並不完全知道我擁有的問題的最佳解決方案,也許有人可以將我指向最佳解決方案。合併JavaScript與nodejs
我有一個安裝框架好友編譯coffeescript到JS,都運行順利。我現在需要的是一些合併的工具,最好是將腳本合併爲一個腳本。
好友有一個很好的安裝程序,它可以在保存時自動編譯腳本,有沒有這樣的工具,也可以在Buddy完成它的事情後觀察並執行操作?
我完全不熟悉所有節點shenanigans,並不完全知道我擁有的問題的最佳解決方案,也許有人可以將我指向最佳解決方案。合併JavaScript與nodejs
我有一個安裝框架好友編譯coffeescript到JS,都運行順利。我現在需要的是一些合併的工具,最好是將腳本合併爲一個腳本。
好友有一個很好的安裝程序,它可以在保存時自動編譯腳本,有沒有這樣的工具,也可以在Buddy完成它的事情後觀察並執行操作?
有一個稱爲uglify-js節點JS的模塊,其處理縮小
要安裝它運行:
npm install -g uglifyjs
它將安裝命令行實用程序,它接受來自標準輸入的文件,並輸出到標準輸出縮小的結果。
要連接你可以簡單地使用命令行工具cat
。
可以在最小化之前或之後連接所有CoffeeScript文件。
兩者都有權衡。
通過連接之前,您將避免公佈coffeescript生成的一些支持代碼,但是會丟棄CoffeeScript生成的包裝以避免污染全局範圍的(function(){ /* your generated code here*/ })()
。
感謝您的回答,這是我最終做的。爲此編寫了一個蘋果腳本,我編譯了咖啡腳本後運行。 解決方案的任何想法,使目錄中的文件已更改時運行? –
node.js本身中的'fs'模塊,它允許你觀察目錄中的文件變化(實際上這就是咖啡-w所做的)。 http://nodejs.org/api/fs.html#fs_fs_watch_filename_options_listener它在linux上很好用,但在Mac上不太好。另外一個選擇是彙集變化,就像每0.5秒重新編譯一次。您也可以使用https://github.com/mynyml/watchr,它允許在目錄中的文件更改時運行命令 – tzador
請參閱brunch。它包括生成器,linter,連接器,縮小器,源觀察器和其他有用的工具。
我對Buddy不熟悉,但是coffeescript支持用'coffee --join'連接源文件。那麼你只需要通過uglify管道,'npm install uglify-js'。 –