【发布时间】:2020-06-22 02:52:29
【问题描述】:
我在一个异步函数中,试图从回调函数中返回数据:
async function getData(){
const client = new google.auth.JWT(
keys.client_email,
null,
keys.private_key,
['https://www.googleapis.com/auth/spreadsheets']
)
let returnData
const finalData = (data) => {
returnData = data
}
async function gsrun(client) {
const gsapi = google.sheets({version:'v4', auth: client})
const options = {
spreadsheetId: '1d3ZiP1I9jJ2ddlD1Hx2ylWn1VFD_5lYQ9Ps9e9gEqI',
range: 'Sheet1!A1:H5'
}
const data = await gsapi.spreadsheets.values.get(options)
return data.data.values
}
client.authorize( async (err, tokens)=> {
if(err) return console.log(err)
let data = await gsrun(client)
finalData(data)
})
return returnData
}
在控制台中我得到:Promise { undefined }。我应该如何等待该承诺解决或等待数据?
【问题讨论】:
-
你能告诉我们你的
gsrun()函数吗? -
我遵循了文档,但不是我需要的。它没有说明从异步回调函数返回数据。
-
我刚刚添加了孔函数
标签: node.js