【发布时间】:2021-01-31 01:52:06
【问题描述】:
好的,所以我正在尝试修改我正在处理的函数中的一段现有代码,以集成数据库调用以检查存储在那里的信息,而不是像库中当前默认的那样仅在本地(commando. js)。
问题是,数据库调用是通过带有 sequelize 的 Promise 处理的。我需要以某种方式将 .then() 的值返回到父函数/范围?我知道您可以使用 async/await 来做到这一点,但因为该函数是从库中扩展的类的一部分,所以它不能是异步函数。有没有办法将 .then() 的值返回到父作用域,或者这根本不可能?
我尝试使用回调,它们将值返回到父作用域,但函数在回调返回之前完成执行,所以我认为除非有办法等待回调回来?
这是我目前拥有的:
nonAsyncFunction(args){
// Do stuff
database.getData()
.then((result)=>{
// Do Stuff
return value
});
return value // Need to somehow return value from .then() here?
}
如果您有任何问题或需要我提供任何信息,请随时告诉我,否则非常感谢您的帮助。
【问题讨论】:
标签: javascript node.js promise es6-promise