如何在带有父级上下文的模块内使用require?

时间:2019-03-12 20:47:44

标签: node.js module require

app.js

require('./modules/mod');

modules / mod / mod.js

modules.exports = () => {
   require('./modules/secondmodule');
}

基本上,我希望以上代码能够要求模块,但要使用与调用其本身相同的上下文,例如同一文件夹中的另一个模块,而不必使用相对路径。

我以为module.require()做到了这一点,但这似乎给了我与我将代码移到单独的模块(mod.js)中后require()相同的错误。

编辑:

此后,我发现可以使用require.parent.module,而且似乎可以正常使用。如果不建议这样做,请告诉我。

1 个答案:

答案 0 :(得分:0)

次要可选答案:

module.exports = () => {
   module.parent.require('./modules/secondmodule');
}