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

时间:2016-10-02 04:03:52

标签: javascript node.js coffeescript

我已经发现可以这样做:

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的是我正在为这些核心类加载补丁。

1 个答案:

答案 0 :(得分:1)

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

App = window.App || {}

_ = window._

# Your code here...

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

然后只按顺序包含脚本标记,其中所有非库代码在顶部具有相同的App命名空间,以通过全局对象彼此共享。