我有两个功能
async function convertToBase64(file) { const fileReader = new FileReader(); fileReader.onload = () => { const srcData = fileReader.result; console.log('scrData: ', srcData); // result is correct return srcData; }; fileReader.readAsDataURL(file); } async function addData(values) { const converted = await convertToBase64(values.file); console.log(converted); // result undefined await addDoc(collection(db, 'list'), { image: converted, }); }
我尝试过try...catch、async-await函数,但无论如何都找不到解决方案
convertToBase64()
函数不会显式返回值,因此您提供的代码始终返回undefined
。您可以更改该函数,使其返回一个Promise,一旦resolves " rel="nofollow noreferrer">FileReader 已成功读取 base64 中的文件,并处理任何reject
ions 或发生的错误: