0

我在 Node.js 中导出模块时遇到问题。这是我的代码的一部分:

var zmq = require('zmq');
var module = require('module');

var DeviceRequester = function(port, name)
{
   ...   
};

var SMValueGetter = function(socket)
{
   ...
};

module.exports.DeviceRequester = DeviceRequester;
module.exports.SMValueGetter = SMValueGetter;

当我使用它时,我收到以下错误:

module.exports.DeviceRequester = DeviceRequester;
                           ^
TypeError: Cannot set property 'DeviceRequester' of undefined
at Object.<anonymous> (<PROJECT_PATH>/node_modules/lse/lib/lse.js:168:32)
at Module._compile (module.js:456:26)
at Object.Module._extensions..js (module.js:474:10)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)
at Module.require (module.js:364:17)
at require (module.js:380:17)
at Object.<anonymous> (<PROJECT_PATH>/server.js:6:13)
at Module._compile (module.js:456:26)
at Object.Module._extensions..js (module.js:474:10)

我不知道它为什么会发生。我已经修改了 Node.js 文档和一些关于导出模块的教程,所有这些都是这样做的。我忽略了什么吗?

4

1 回答 1

3

多注意错误

TypeError: Cannot set property 'DeviceRequester' of undefined

var module=require("module");您正在覆盖默认module变量的行。

简单地尝试改变一些更有意义的事情,例如

var MyModule=require(..path..)

于 2013-10-24T10:14:11.817 回答