我正在开发这个项目,该项目允许用户从本地计算机将文件上传到 Firebase 存储。用户选择要上传到 Firebase 存储或 Firestore 的文件或图像,如果成功,将显示一条消息。
下面是我为实现该任务而编写的代码,但它返回错误,说 .put 不是函数。
const handleUpload = () => {
setUploading(true);
const storageRef = ref(storage, `files/${file.name}`)
.put(file)
.then((snapshot) => {
console.log(snapshot);
storageRef("files")
.child(file.name)
.getDownloadURL()
.then((url) => {
db.collection("myFiles").add({
timestamp: db.FieldValue.serverTimestamp(),
caption: file.name,
fileUrl: url,
size: snapshot.bytesTransferred,
});
setUploading(false);
setOpen(false);
setFile(null);
});
storageRef("files")
.child(file.name)
.getMetadata()
.then((meta) => {
console.log(meta.size);
});
});
};