這是下面的代碼。控制臺日志告訴我它正在正確讀取影像,但由于某種原因 firebase.storage 未定義。
import React from 'react';
import firebase from 'firebase/compat/app';
import "firebase/storage";
function ProfilePic() {
const [image , setImage] = React.useState('');
const upload = ()=>{
if (image == null) return;
console.log(image);
const ref = firebase.storage.ref(`images/${image.name}`);
ref.put(image).on("state_changed" , alert("success") , alert);
}
return (
<div className="App">
<center>
<input type="file" onChange={(e)=>{setImage(e.target.files[0])}}/>
<button onClick={upload}>Upload</button>
</center>
</div>
);
}
export default ProfilePic;
uj5u.com熱心網友回復:
您需要匯入舊命名空間庫以按照您的期望使用它。
import "firebase/compat/storage";
通過使用"firebase/storage",您最終會匯入現代模塊化 SDK。
您還需要使用 callfirebase.storage()來獲取其實體而不是名稱空間:
const ref = firebase.storage().ref(`images/${image.name}`);
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/371095.html
