Is it possible to pass arguments when loading a module using require?
I have module, login.js which provides login functionality. It requires a database connection, and I want the same database connection to be used in all my modules. Now I export a function login.setDatabase(…) which lets me specify a database connection, and that works just fine. But I would rather pass the database and any other requirements when I load the module.
var db = ...
var login = require("./login.js")(db);
I am pretty new with NodeJS and usually develop using Java and the Spring Framework, so yes… this is a constructor injection 🙂 Is it possible to do something like the code I provided above?
Based on your comments in this answer, I do what you’re trying to do like this:
I structure pretty much all my modules like that. Seems to work well for me.