看看我的控制器

exports.userList = async (req, res) => {
   let result = await Methods.getAllData(Campaign)
   await console.log(result, 'tr')
}


Methods.getAllData是获取所有用户数据的函数,参数Campaign是我的型号名称。

这里的功能..

methods.getAllData = (modelName)=>{
    modelName.findAll({
    }).then(value=>{
        console.log(value, 'rt')
        return value
    }).catch(err=>{
        return err
    })
}



我的console.log语句首先运行。我试图解决使用aync / await但无法正常工作。我需要得到结果,然后需要进行控制台。
在这里,我返回了数据,如何使用回调代替return?

最佳答案

您只需要从getAllData返回Promise

const getAllData = (modelName)=>{
  return  modelName.findAll();
}

exports.userList = (req, res) => {
   const newPromise = getAllData(Campaign);

   newPromise
     .then( result => console.log('result',result))
     .catch( err => console.log('error', err))

}

关于node.js - Node 异步/等待不起作用,需要实现回叫,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/59980780/

10-11 07:23