使用 coffee CLI,如何将变量分配给所需的文件?

With the coffee CLI, how I can assign variables to required files?

我发现可以这样做:

coffee -r "_=underscore"

在Javascript中似乎无法自动加载常量;即无论您导出什么,您不仅需要要求而且还需要显式分配一个变量。

我正在尝试为我的程序创建一个 REPL,一个包含以下内容的 shell 脚本:

coffee -r "{String, Array, Algorithms}=./port" 

其中 ./port 指的是我的 port.coffee 文件。但是,那是行不通的。我收到此错误:

{String, Array, Algorithms} = require('./port')
                            ^
SyntaxError: Unexpected token =

这看起来像是有效的 NodeJ,所以我不确定为什么它不起作用。

我导出并需要 StringArray 的原因是我正在为这些核心 类 加载补丁。

如果您不介意使用 q 命名空间变量污染全局范围,则可以使用以下解决方法在 CoffeeScript 中导入:

App = window.App || {}

_ = window._

# Your code here...

App.String = String
App.Array = Array
App.Algorithms = Algorithms

然后按照依赖项的顺序包含您的脚本标签,其中所有非库代码都在顶部具有相同的 App 命名空间,以便通过全局对象相互共享。