我正在学习NodeJS(使用Express),并遇到了令我印象深刻的东西。
在app.js我需要一个模块(在这种情况下是护照),然后需要我开发的第二个模块(passport-strats.js)。在护照内部我必须重新要求护照,即使它已经在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");