当我使用 async
/await
运算符时,我不确定为什么以下函数会返回 promise ?
getBase64 = async (url) => {
const response = await axios.get(url, {
responseType: 'arraybuffer'
})
const buffer = new Buffer.from(response.data,'binary').toString('base64')
return ('data:image/jpeg;base64,' + buffer)
}
我知道我可以简单地添加 .then(data => console.log(data))
但我想将原始数据分配给一个变量,例如:
const base64Img = getBase64()
...这是不可能的,因为由于某种原因返回类型是一个 promise 。
最佳答案
异步函数只是一个 promise 。如果你想要返回值,你也需要等待它。
const bas64Img = await getBase64()
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/async_function
关于javascript - 为什么这个 async/await 函数返回一个 promise ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58103870/