定义后如何从另一个文件获取变量

我正在尝试将mongo客户端保存到另一个文件中。问题是,当我尝试获取mongoClient变量时,它返回未定义的值。

在尝试获取mongoClient变量之前,我应该如何等待它?

文件1

let mongoClient;

module.exports = async function() {
    const mongooseOptions = {...};
    mongoClient = await mongoose.connect(dbUrl,mongooseOptions);
};

exports.getMongoClient = () => mongoClient;

文件2

const { getMongoClient } = require('../../startups/db');
console.log(getMongoClient); // Returns undefined
wwwqq20010 回答:定义后如何从另一个文件获取变量

您应该使用此逻辑

文件1

const axios = require("axios");
async function getData() {
  return await axios.get("https://jsonplaceholder.typicode.com/todos");
}
module.exports = { getData };

文件2

const { getData } = require("./file1");
getData().then(data => console.log(data));
,

您应使用 global 变量访问以下文件中的任何文件。

文件1

global.mongoClient;

module.exports = async function() {
    const mongooseOptions = {...};
    global.mongoClient = await mongoose.connect(dbUrl,mongooseOptions);
};

文件2

console.log(global.getMongoClient);
本文链接:https://www.f2er.com/2761367.html

大家都在问