【发布时间】:2021-08-16 11:57:20
【问题描述】:
我有一个像下面这样的函数,
class MyClass {
myFunction() {
return new Promise((resolve, reject) => {
if(....) {
resolve(data)
} else {
reject(err)
}
})
}
}
module.exports = MyClass;
我可以从下面这样的另一个文件访问这个类
const MyClass = require('./fileName.js').prototype;
const exportData = MyClass.myFunction().then(data => {
return data;
}).catch(err => {
console.log(err)
})
console.log(exportData) //exportData is not null
module.exports = exportData;
当我想将此exportData 导出到其他文件时,exportData 的值在其他文件中为空。但是如果我不导出这个exportData,它就不是空的。
如何解决这个问题?
谢谢。
【问题讨论】:
-
尝试在 then 块中移动 module.exports。 promise 使块同步,但它们本身是异步块。但是如果调用了拒绝块,请小心,在这种情况下 exportData 可能为空。
-
@KaranGaur 你能举个例子吗?
-
@MrCodingB 我认为这是我的问题。你能给出代码示例吗?
标签: javascript node.js