2

是否可以为 JavaScript / CoffeeScript 文件导入命名空间?
这个想法是避免输入完全限定的名称空间。

假设我在我的初始化代码中定义了波纹管。

window.Editor = { }

这是 CoffeeScript 文件,我希望避免在其中一遍又一遍地键入完全限定的命名空间:

class Editor.Editor
  constructor: (@width, @hight) ->
    @canvas = new Editor.Canvas(@width,  @hight)
    @backGround = new Editor.BackGround(@canvas)
    @frontGround = new Editor.FrontGround(@canvas)

例如,我可以导入类似于在 Java 中导入包的命名空间吗

import Editor.*;
4

2 回答 2

1

尝试这样的事情:

编辑器.coffee:

Editor = {}

root = exports ? window
root.Editor = Editor

主咖啡:

{Editor} = require './Editor'
于 2012-12-09T15:20:34.507 回答
0

你可以试试

for key, value of Editor
  window[key] = value

但是你应该非常小心。因为你可以重新定义你真正需要的东西。

于 2012-12-09T14:40:23.427 回答