调用异步函数

时间:2018-07-05 10:55:06

标签: node.js express asynchronous

我有一个如下模块:

  

async.js

module.exports = async function (){
    await func()
}
  

index.js

var asyncFun = require('async') 

如何在index.js中直接以asyncFun()的身份运行它?

我知道如何将这些功能作为中间件运行,但我想直接运行。至于运行它,我需要调用await,而await必须在异步内部才能被调用。

3 个答案:

答案 0 :(得分:1)

您可以使用此:

(async () => {
    await asyncFun();
})();

答案 1 :(得分:0)

尝试在async.js中添加return语句

module.exports = async function (){
    return await func()
}

并直接运行asyncFun()

答案 2 :(得分:0)

我通过使根函数异步并用正常函数包装所有异步函数并返回一个promise来解决了这个问题。 (使用通话)。

示例:

假设这是编写所有代码的主要功能。

// create it as a async function
module.exports = async function main(){
    // Do something all your stuff
}

从其他位置调用主函数

require('./main)()