1
我在CoffeeScript中編寫了一個簡單的模塊,但我想將編譯好的JavaScript發佈到NPM。我不想每次都手動運行coffee
命令,這太打字了,我可能會不時忘記和發佈陳舊的js。如何在發佈到NPM之前編譯coffeescript?
我知道有一些npm package.json script hooks和CoffeeScript cli參數的組合可以做到這一點,但我忘記了這些細節。它又是怎麼回事?
我在CoffeeScript中編寫了一個簡單的模塊,但我想將編譯好的JavaScript發佈到NPM。我不想每次都手動運行coffee
命令,這太打字了,我可能會不時忘記和發佈陳舊的js。如何在發佈到NPM之前編譯coffeescript?
我知道有一些npm package.json script hooks和CoffeeScript cli參數的組合可以做到這一點,但我忘記了這些細節。它又是怎麼回事?
一個基本的package.json設置爲conventional directory structure看起來像
"scripts": {
"prepublish": "coffee --compile --output lib/ src/"
}
如果你也想在運行測試之前,編譯CoffeeScript中,你可能想拉編譯步驟作爲一個可重複使用的腳本:
"scripts": {
"pretest": "npm run compile",
"prepublish": "npm run compile",
"test": "mocha",
"compile": "coffee --compile --output lib/ src/"
}
設置'Cakefile'或'Makefile'來處理構建和測試過程通常是一個好主意。 – 2014-10-04 22:22:01
@LeonidBeschastny肯定值得注意。 [某些人](http://substack.net/task_automation_with_npm_run)強烈認爲這樣的構建工具通常是不必要的。節點模塊通常(理想情況下)很小,以致於在腳本之外構建工具過多。 – hurrymaplelad 2014-10-05 00:02:23
因爲咖啡命令行不正確而被降級。 – 2015-04-24 09:01:05