2016-10-02 53 views
0

我已經想通了,這是可以做到這樣的事情:使用咖啡CLI,我如何將變量分配給所需的文件?

coffee -r "_=underscore" 

在Javascript中似乎沒有辦法自動加載的常量;即無論您輸出什麼,您都必須不僅要求而且明確指定一個變量。

我想創建一個REPL我的程序,包含此shell腳本:

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

其中./port是指我port.coffee文件。但是,這是行不通的。我得到這個錯誤:

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

這看起來像是有效的NodeJS所以我不知道爲什麼它不工作。

我輸出&需要StringArray的原因是我正在爲這些核心類加載補丁。

回答

1

如果你是罰款污染帶Q的命名空間的變量在全球範圍內,你可以在CoffeeScript中使用此解決方法導入:

App = window.App || {} 

_ = window._ 

# Your code here... 

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

然後,只需包括腳本標記在它們的依賴性的順序,所有非圖書館代碼在頂部具有相同的App名稱空間以通過全局對象彼此共享。