将 CoffeeScript 编译成特定的 Javascript 文件

Compile CoffeeScript to particular Javascript file

我是 CoffeeScript 的新手,这是我第一次尝试。我有两个问题。

  1. 编译成特定文件

我想即时将特定的 coffee 文件编译为 javascript

为此,我做了以下工作:

coffee -w -o controllers/loginCtrl.js -c coffeescripts/loginCtrl.coffee

这给了我

ENOENT, open 'c:\path\to\public\testassets\js\controllers\loginCtrl.js\loginCtrl.js'

我相信这是因为 js 文件已经存在。如果我删除 js 文件,相同的命令会创建一个名为 loginCtrl.js 的文件夹,然后在其中添加一个文件。

如何让 coffeeScript 编译为特定的现有文件或正确的路径?

  1. 从编译文件中删除不需要的代码

假设文件被编译,新的 js 文件被编译为

(function() {
....  
}).call(this);

我可以删除这个编译代码的第一行和最后一行吗?

-o 选项指定输出目录。如果从此参数中删除文件名,您应该会得到预期的输出。

要在没有 top-level function safety wrapper 的情况下进行编译,请使用 -b 选项。

请在此处阅读有关 coffee 命令选项的信息:​​http://coffeescript.org/#usage

  1. 使用参数 -o 你可以设置输出目录,但你的 js 文件的名称将与咖啡文件的名称相同
  2. 如果你想阻止coffeescript将代码包装到立即调用的函数中,你需要添加参数-b--bare("Compile the JavaScript without the top-level function safety wrapper."来自官方文档)