Home > database >  Couldn't create collection in firebase?
Couldn't create collection in firebase?

Time:01-20

I'm trying to create a collection if not exist and uploading img file.

I'm receiving upload image URL and progress to but it is not creating collection named images.

const useStorage = (file) => {
const [progress, setProgress] = useState(0);
const [error, setError] = useState(null);
const [url, setUrl] = useState(null);

useEffect(() =>{
const storageRef = ref(storage, file.name);
const collectionRef = collection(db, "images");

console.log(collectionRef)


//get Progress
const uploadTask = uploadBytesResumable(storageRef, file);
uploadTask.on('state_changed', 
(snap) => {
const progress = Math.round((snap.bytesTransferred / snap.totalBytes) 
* 100);
console.log('Upload is '   progress   '% done');
setProgress(progress);
}, 
(error) => {
setError(error)
}, 

// Handle successful uploads on complete
async () => {
const url= await getDownloadURL(uploadTask.snapshot.ref);
console.log('File available at', URL);
collectionRef.addDoc({ url});
setUrl(URL);
});
},[file])
return { progress, error, url };
}

export default useStorage;

Not sure if addDoc() works.

CodePudding user response:

Collections are just appear and disappear. If you delete all files in collection, collection it self will gone. If you create any document in not existing collection, collection will exist.

CodePudding user response:

Import : import {collection,addDoc} from 'firebase/firestore';

Replace : collectionRef.addDoc({ url});

To : await addDoc(collectionRef, { url});

  •  Tags:  
  • Related