J'ai deux fonctions
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, }); }
J'ai essayé les fonctions try...catch, async-wait, mais je n'ai quand même pas trouvé de solution
convertToBase64()
函数不会显式返回值,因此您提供的代码始终返回undefined
。您可以更改该函数,使其返回一个Promise,一旦FileReader 已成功读取 base64 中的文件,并处理任何reject
ions ou erreurs se sont produites :