繁体   English   中英

node.js模块中的自动导出功能

[英]auto-exporting functions in a node.js module

是否可以自动导出在node.js模块中定义的所有功能?

例:

假设在foobar.js文件中,我具有以下两个功能

function foo() {
    ...
}

function bar() {
    ...
}

是否存在将它们自动添加到exports字典中的工具,以便可以使用以下代码?

foobar = require('foobar.js')
foobar.foo(); // works, even if not explicitly added in 'exports'
foobar.bar(); // also works

换句话说,我想逐步向模块添加新功能,而不必手动将其添加到导出字典中。 所以,以下是我要避免的事情:

 exports.foo = foo; exports.bar = bar; 

也许可以通过内省地获取模块中定义的所有功能的列表来实现,但是我也不知道如何实现。

在模块中公开内容的一种方法:

var foobar = function(x, y) {
  this.x = x;
  this.y = y;
};
module.exports = foobar;

在您的情况下:

foobar = require('foobar.js');
module.exports = foobar;

您可以在这里阅读更多内容。

编辑

做您需要做的事情将需要重载节点“ require”方法,而这是不可能的,请看这里
也许您可以安装node-overload并使用RePrototype方法。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM