Is it possible to call a function in a Node.js module when it's required.
app.js
const Database = require('./database').Database;
const UsersModel = require('./model').Model; // pass the name = Users and database
const AdminsModel = require('./model').Model; // pass the name = Admins and database
database.js
export class Database {
// some functions here
}
model.js
export class Model {
onModelCreated(name, database) {
this.name = name;
this.database = database;
}
insert() {}
find() {}
delete() {}
update() {}
}
Is it possible to call a function in a Node.js module when it's required.
app.js
const Database = require('./database').Database;
const UsersModel = require('./model').Model; // pass the name = Users and database
const AdminsModel = require('./model').Model; // pass the name = Admins and database
database.js
export class Database {
// some functions here
}
model.js
export class Model {
onModelCreated(name, database) {
this.name = name;
this.database = database;
}
insert() {}
find() {}
delete() {}
update() {}
}
Share
Improve this question
edited Mar 16, 2019 at 15:02
Devanshu Linux
asked Mar 16, 2019 at 14:09
Devanshu LinuxDevanshu Linux
632 silver badges8 bronze badges
1
- 1 Do you mean once or every time it is required somewhere? What are you trying to achieve with that? This sounds like a XY problem... – Jonas Wilms Commented Mar 16, 2019 at 14:21
2 Answers
Reset to default 5Since require
calls are cached, all the code inside the module is called once, when you require that module.
abc/index.js
const calledOnce = () => console.log('once');
calledOnce();
console.log('Also once');
module.exports = {
...
}
for the really lazy among us:
call-function-on-require.js
(() => {
console.log('call function on require');
})();
index.js
require(`./call-function-on-require`);
output:
'call function on require'
another solution
or, if you like in call-function-on-require.js
module.exports = () => {
console.log('call function on require');
}
// index.js: require(`./call-function-on-require`)();
发布者:admin,转转请注明出处:http://www.yc00.com/questions/1745166990a4614692.html
评论列表(0条)