Re-requiring parent 需要的模块

Re-requiring module that parent requires

我正在学习 NodeJS(使用 Express),遇到了一些让我感到奇怪的事情。

在 app.js 中,我需要一个模块(在本例中为护照),然后需要我开发的第二个模块 (passport-strats.js)。在 passports-strats 内,我必须 re-require 护照,即使 app.js 中已经需要它。

这不是唯一的例子,我在三个紧密相关的文件中需要一些模块。这是标准还是我遗漏了一些构建 NodeJS 应用程序的关键部分?

因为您需要 passport 模块,一旦您应该在 passport-strats.js 中需要它并从此模块导出它。在 app.js 中,您可以使用两个模块,只需导入 passport-strats.js。即:

//passport-strats.js

var {passport} = require("./path");
//other code

module.exports = { passport, someVariableFromCurrentModel };


//In app.js

var {passport, someVariableFromCurrentModel} = require("./passport-strats");