Tengo un sistema de fragmentación de archivos simple para cargar datos a un servidor a través de muchos fragmentos, para hacer esto delego la tarea de división y carga a un componente dedicado... Sin embargo, al pasar el Blob recibido, del usuario, a mi componente dedicado, el prop en ese componente no parece contener nada... De hecho, el método Blob slice() arroja un error quejándose de que es una acción ilegal cortar un blob vacío... También llamar a .text() en el objeto blob da un cuerda vacía.
Aquí una versión simplificada:
const Uploader = ({ fileBlob }) => { useEffect(() => { fileBlob.text().then(textContent => console.log(textContent)); // Logs an empty string let chunk = fileBlob.slice(0, fileBlob.size() / 2); // Throws }); return (<some stuff />) } const BlobFromUser = () => { const fileUpload = (fileBlob) => { fileBlob.text().then(textContent => console.log(textContent)); // Logs the actual content notify(<Uploader fileBlob={fileBlob} />); } return (<file upload user form triggers fileUpload()/>) } Además, al leer .size() de Uploader se obtiene el tamaño esperado, pero el blob no contiene nada.