Node.js "require" function and parameters Node.js "require" function and parameters javascript javascript

Node.js "require" function and parameters


When you call lib = require("lib.js")(params)

You're actually calling lib.js with one parameter containing two properties name app and param2

You either want

// somefilerequire("lib.js")(params);// lib.jsmodule.exports = function(options) {  var app = options.app;  var param2 = options.param2;};

or

// somefilerequire("lib.js")(app, param2)// lib.jsmodule.exports = function(app, param2) { }


You may have an undefined value that you're trying to pass in.

Take for instance, requires.js:

module.exports = exports = function() {   console.log('arguments: %j\n', arguments);};

When you call it correctly, it works:

node> var requires = require('./requires')(0,1,2,3,4,5);arguments: {"0":0,"1":1,"2":2,"3":3,"4":4,"5":5}

If you have a syntax error, it fails:

> var requires = require('./requires')(0,);... var requires = require('./requires')(0,2);... 

If you have an undefined object, it doesn't work:

> var requires = require('./requires')(0, undefined);arguments: {"0":0}

So, I'd first check to see that your object is defined properly (and spelled properly when you pass it in), then check that you don't have syntax errors.