Welcome to ShenZhenJia Knowledge Sharing Community for programmer and developer-Open, Learning and Share
menu search
person
Welcome To Ask or Share your Answers For Others

Categories

When I do:

lib = require('lib.js')(app)

is app actually geting passed in?

in lib.js:

exports = module.exports = function(app){}

Seems like no, since when I try to do more than just (app) and instead do:

lib = require('lib.js')(app, param2)

And:

exports = module.exports = function(app, param2){}

I don't get params2.

I've tried to debug by doing:

params = {}
params.app = app
params.param2 = "test"

lib = require("lib.js")(params)

but in lib.js when I try to JSON.stringify I get this error:

"DEBUG: TypeError: Converting circular structure to JSON"
See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
thumb_up_alt 0 like thumb_down_alt 0 dislike
240 views
Welcome To Ask or Share your Answers For Others

1 Answer

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

// somefile
require("lib.js")(params);
// lib.js
module.exports = function(options) {
  var app = options.app;
  var param2 = options.param2;
};

or

// somefile
require("lib.js")(app, param2)
// lib.js
module.exports = function(app, param2) { }

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
thumb_up_alt 0 like thumb_down_alt 0 dislike
Welcome to ShenZhenJia Knowledge Sharing Community for programmer and developer-Open, Learning and Share

548k questions

547k answers

4 comments

86.3k users

...