使用coffeescript时通过require调用访问导出

时间:2013-01-24 18:30:49

标签: javascript node.js coffeescript

我正在使用CoffeeScript创建一个节点应用程序,并遇到了一个语法问题。基本上,我有一个简单的文件(foo.js),其导出看起来像这样。

  foo = {}

  exports.foo = foo

现在,在一个单独的文件中,我想为此创建等效语法,但在CoffeeScript中。

  var bar = require('./foo').foo;

这样bar就会自动分配给foo.js中的变量foo。但是,我不确定适当的CoffeeScript是做什么的。我尝试过做类似的事情。

  bar = require './foo'.foo

但是节点对我大吼大叫,说它无法找到合适的模块。鉴于此,有没有办法让我使用纯CoffeeScript实现我想要的结果。

1 个答案:

答案 0 :(得分:0)

有时你只需要使用parens。你给的代码:

bar = require './foo'.foo

编译成显然不是你想要的东西:

var bar;

bar = require('./foo'.foo);

您需要执行类似

的操作
bar = require('./foo').foo

将来,我建议在http://jashkenas.github.com/coffee-script/使用浏览器中的CoffeeScript编译器检查代码是否按预期进行编译。