Estoy creando un sitio para mi tienda y aprendiendo Vue js simultáneamente. Estoy atascado en la parte relacionada con la carga de una imagen de producto en firebase. Entiendo que storageRef.put no es una función. Estoy usando Vue js 3 y firebase 9.
uploadImage(e) { const file = e.target.files[0]; const storage = getStorage(); const storageRef = storageReference(storage, 'products/' + file.name); storageRef.put(file); }Esta sintaxis que proporciona es para firebase versión 8.
Para la versión 9
import { getStorage, ref, uploadBytes } from "firebase/storage"; uploadImage(e) { const file = e.target.files[0]; const storage = getStorage(); // Create a reference to 'mountains.jpg' const mountainsRef = ref(storage, 'products/' + file.name); uploadBytes(storageRef, file).then((snapshot) => { console.log('Uploaded!'); }); }Para más recursos.
https://firebase.google.com/docs/storage/web/upload-files#web-version-9