Node.js:导出模块不工作

时间:2011-11-13 09:51:32

标签: javascript node.js coffeescript

我在fwdCallToAgent.coffee上有这个:

exports.fwdCallToAgent = (phone,res,req) -> 

并在server.coffee上:

fwdCallToAgent = require './lib/fwdCallToAgent'

当我运行fwdCallToAgent时,我得到:

2011-11-13T09:49:08+00:00 app[web.1]: TypeError: object is not a function

我在这里缺少什么?

感谢

1 个答案:

答案 0 :(得分:4)

require返回所需模块的exports属性。

您需要的是以下任何一种

A)

// fwdETC.coffee
module.exports.fwdETC = function () { ... }; 

// server.coffee
fwdETC = require('./lib/fwdETC').fwdETC

B)

// fwdETC.coffee
module.exports = function () { ... };

// server.coffee
fwdETC = require './lib/fwdETC'

就个人而言,如果它是模块中唯一的导出函数,我建议采用第二种方法。