David Bulczak
David Bulczak

Reputation: 463

Error in module export with Node.js

I have an issue with exporting a module in Node.js. Here is a part of my code:

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;

When I use it I get the following error:

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)

I have no idea why it occurs. I've red the Node.js documentation and some tutorials about exporting modules and all of them do it that way. Am I overlooking something?

Upvotes: 0

Views: 4320

Answers (1)

Gntem
Gntem

Reputation: 7155

Give more attentions at errors

TypeError: Cannot set property 'DeviceRequester' of undefined

at line var module=require("module"); you are overwriting the default module variable.

simple try to change at something that makes more sense, such as

var MyModule=require(..path..)

Upvotes: 3

Related Questions