在模块内部进行异步函数调用

时间:2018-11-29 07:26:04

标签: node.js asynchronous

module.exports = (tel = '', body = '', from = {}, to = {}, callback) => {
    var body = async function() { 
        return await makingAPICall();
    };

    console.log(body);
    callback(null,[body].join('\n');
};

function makingAPICall() { 
  // Promise resolving stuff
}

上面的代码在我的文件之一中。当前正在发生的事情是,当我尝试打印出变量主体时,我只是得到“ async function(){\ n return awaitmakeingAPICall(); \ n}”,它只是函数主体。我在等待和承诺中阅读了一些内容,但不确定我是否正确设置了异步函数调用。任何帮助将不胜感激。谢谢!

编辑:

module.exports = (tel = '', body = '', from = {}, to = {}, callback) => {
    var body = test();
    console.log(body);
    callback(null,[body].join('\n');
};

async function test() {
  return await makingAPICall();
}

function makingAPICall() { 
  // Promise resolving stuff
}

我也尝试过这样做,但这会导致在调用test()之后返回Promise对象。即使我正在使用异步函数并等待,我还是对为什么会这样感到困惑。

0 个答案:

没有答案