是否可以在整个应用程序中保留Node.js上的实例?

时间:2017-11-10 12:06:46

标签: node.js

我想在这样的模块中实例化一个类:

const Agenda = require('agenda');

const agenda = new Agenda({db: {address: mongoConnectionString}});

然后从代码中的其他位置(如单例)访问agenda已配置的对象。起初我想过使用module.exports = agenda;,但是当我在应用程序的另一个模块中需要这个模块时,它会再次执行所有代码吗?

所以,如果我没有错,哪个是实现这个目标的最佳方法?感谢。

1 个答案:

答案 0 :(得分:1)

您可以使用全局对象在节点应用程序中的任何位置共享变量:

const Agenda = require('agenda');

const agenda = new Agenda({db: {address: mongoConnectionString}});

global.agenda = agenda;

然后你可以在另一个模块中得到你的议程:

const agenda = global.agenda;