Firebase 错误 - 调用 Firebase App.initializeApp() -
Firebase error - call Firebase App.initializeApp() -
我在 React 中遇到 Firebase 问题。它显示“Uncaught FirebaseError: Firebase: No Firebase App '[DEFAULT]' has been created - call Firebase App.initializeApp() (app/no-app).”错误。我在网站的另一个页面上工作,一切正常,我重新加载页面,突然出现错误。我没有更改与 firebase 相关的任何内容。我正在查看其他问题,但没有解决问题。使用 firebase 的子页面是白色的,那里什么都没有,但没有 firebase 的其他子页面运行良好。
This is the screenshot.
代码下方:
import { getDatabase, ref, set, onValue} from "firebase/database";
import {uid} from "uid";
let animals = [];
const Care= () => {
const uuid = uid();
const [name,setName] = useState("");
const [type,setType] = useState("");
const [sex,setSex] = useState("");
const [age,setAge] = useState("");
const [story,setStory] = useState("")
const [photo,setPhoto] = useState("")
const [animalId,setAnimalId] = useState("")
const [from, setFrom] = useState("")
const [to, setTo] = useState("")
const handleSubmit = (e) => {
e.preventDefault();
set(ref(db, `/Care/${uuid}`), {
name: name,
type: type,
sex: sex,
age: age,
story: story,
photo: photo,
from:from,
to:to,
id:uuid
}).then(() =>{
alert("Udało się! Zwierzak został dodany!")
})
setName("")
setType("")
setSex("")
setAge("")
setStory("")
setPhoto("")
setAnimalId("")
}
const db = getDatabase();
const starCountRef = ref(db, `/Care`);
onValue(starCountRef, (snapshot) => {
let data = snapshot.exportVal();
animals = [];
Object.keys(data).map((id) => {
animals.push(data[id])
})
});
return (
<>
<div className="care-header">
<div className="header-content">
<h1 className="header-title">Znajdź opieke dla zwierzaka!</h1>
</div>
</div>
<div className="form-wrapper-care">
<h3 className="form-title">Infomacje o zwierzaku </h3>
<form action="" className="form" onSubmit={handleSubmit}>
<input
className="default-input"
type="text"
placeholder="Imię"
defaultValue={name}
onChange={(e) => setName(e.target.value)}
/>
<select
className="select-input"
name=""
id=""
defaultValue={type}
onChange={(e) => setType(e.target.value)}
>
<option value="Wybierz gatunek">Wybierz gatunek</option>
<option value="Pies">Pies</option>
<option value="Kot">Kot</option>
<option value="Gryzoń">Gryzoń</option>
<option value="Gad">Gad</option>
<option value="Ptak">Ptak</option>
</select>
<select
className="select-input"
name=""
id=""
defaultValue={sex}
onChange={(e) => setSex(e.target.value)}
>
<option value="sex">Wybierz płeć</option>
<option value="Samiec">Samiec</option>
<option value="Samica">Samica</option>
</select>
<input
className="default-input"
type="text"
placeholder="Wiek"
defaultValue={age}
onChange={(e) => setAge(e.target.value)}
/>
<textarea
className="textarea-input"
defaultValue={story}
cols="30"
rows="10"
placeholder="Tu wpisz choroby zwierzaka oraz jego historię."
onChange={(e) => setStory(e.target.value)}
/>
<input
placeholder="Wrzuć link do zdjęcie zwierzaka"
className="default-input"
name="photo"
type="text"
defaultValue={photo}
onChange={(e) => setPhoto(e.target.value)}
/>
<div>
<label className="date-label" htmlFor="">Od:
<input
type="date"
className="date-input"
defaultValue={from}
onChange={(e) => setFrom(e.target.value)}
/>
</label>
<label htmlFor="" className="date-label">Do:
<input
type="date"
className="date-input"
defaultValue={to}
onChange={(e) => setTo(e.target.value)}
/>
</label>
</div>
<button className="submit-button-care">Szukaj opieki</button>
</form>
</div>
<div className="adoption-cards-care container">
<h3 className="care-title">Szukam opieki</h3>
<ul className="cards-list">
{
Object.keys(animals).map((id) => {
return (
<li key={animals[id].id} className="card-item">
<div className="card">
<div className="photo-container">
<img src={animals[id].photo} alt="animal-photo" className="animal-photo"/>
</div>
<div className="animal-info">
<p>
<span>Imię:</span>{animals[id].name}
</p>
<p>
<span>Gatunek:</span>{animals[id].type}
</p>
<p>
<span>Płeć:</span>{animals[id].sex}
</p>
<p>
<span>Wiek:</span>{animals[id].age}
</p>
<p className="date-info">
<span>Od:</span> {animals[id].from}
</p>
<p className="date-info">
<span>Do:</span> {animals[id].to}
</p>
</div>
<div className="animal-description">
<p className="description-title">Opis:</p>
<p className="animal-story">{animals[id].story}</p>
<button className="care-btn">Opiekuj się</button>
</div>
</div>
</li>
)
})
}
</ul>
</div>
</>
);
}
export default Care;
和 firebase 配置:
import { initializeApp } from "firebase/app";
import { getAnalytics } from "firebase/analytics";
import {getAuth} from "firebase/auth"
import {getDatabase} from "firebase/database";
const firebaseConfig = {
apiKey: "X",
authDomain: "X",
databaseURL: "X",
projectId: "X",
storageBucket: "X",
messagingSenderId: "X",
appId: "X",
measurementId: "X"
};
const app = initializeApp(firebaseConfig);
const analytics = getAnalytics(app);
export const db = getDatabase(app);
export const auth = getAuth(app);
尝试从 compat
导入 Firebase
& 仅导出数据库
import firebase from 'firebase/compat/app';
import 'firebase/compat/auth';
import 'firebase/compat/firestore';
const firebaseConfig = {
apiKey: "X",
authDomain: "X",
projectId: "X",
storageBucket: "X",
messagingSenderId: "X",
appId: "X",
measurementId: "X"
};
const db = firebase.initializeApp(firebaseConfig);
export default db;
在另一端导入数据库和您想要使用的应用程序
import db from './db';
import { getAuth, signInWithEmailAndPassword } from 'firebase/auth'
我在 React 中遇到 Firebase 问题。它显示“Uncaught FirebaseError: Firebase: No Firebase App '[DEFAULT]' has been created - call Firebase App.initializeApp() (app/no-app).”错误。我在网站的另一个页面上工作,一切正常,我重新加载页面,突然出现错误。我没有更改与 firebase 相关的任何内容。我正在查看其他问题,但没有解决问题。使用 firebase 的子页面是白色的,那里什么都没有,但没有 firebase 的其他子页面运行良好。 This is the screenshot.
代码下方:
import { getDatabase, ref, set, onValue} from "firebase/database";
import {uid} from "uid";
let animals = [];
const Care= () => {
const uuid = uid();
const [name,setName] = useState("");
const [type,setType] = useState("");
const [sex,setSex] = useState("");
const [age,setAge] = useState("");
const [story,setStory] = useState("")
const [photo,setPhoto] = useState("")
const [animalId,setAnimalId] = useState("")
const [from, setFrom] = useState("")
const [to, setTo] = useState("")
const handleSubmit = (e) => {
e.preventDefault();
set(ref(db, `/Care/${uuid}`), {
name: name,
type: type,
sex: sex,
age: age,
story: story,
photo: photo,
from:from,
to:to,
id:uuid
}).then(() =>{
alert("Udało się! Zwierzak został dodany!")
})
setName("")
setType("")
setSex("")
setAge("")
setStory("")
setPhoto("")
setAnimalId("")
}
const db = getDatabase();
const starCountRef = ref(db, `/Care`);
onValue(starCountRef, (snapshot) => {
let data = snapshot.exportVal();
animals = [];
Object.keys(data).map((id) => {
animals.push(data[id])
})
});
return (
<>
<div className="care-header">
<div className="header-content">
<h1 className="header-title">Znajdź opieke dla zwierzaka!</h1>
</div>
</div>
<div className="form-wrapper-care">
<h3 className="form-title">Infomacje o zwierzaku </h3>
<form action="" className="form" onSubmit={handleSubmit}>
<input
className="default-input"
type="text"
placeholder="Imię"
defaultValue={name}
onChange={(e) => setName(e.target.value)}
/>
<select
className="select-input"
name=""
id=""
defaultValue={type}
onChange={(e) => setType(e.target.value)}
>
<option value="Wybierz gatunek">Wybierz gatunek</option>
<option value="Pies">Pies</option>
<option value="Kot">Kot</option>
<option value="Gryzoń">Gryzoń</option>
<option value="Gad">Gad</option>
<option value="Ptak">Ptak</option>
</select>
<select
className="select-input"
name=""
id=""
defaultValue={sex}
onChange={(e) => setSex(e.target.value)}
>
<option value="sex">Wybierz płeć</option>
<option value="Samiec">Samiec</option>
<option value="Samica">Samica</option>
</select>
<input
className="default-input"
type="text"
placeholder="Wiek"
defaultValue={age}
onChange={(e) => setAge(e.target.value)}
/>
<textarea
className="textarea-input"
defaultValue={story}
cols="30"
rows="10"
placeholder="Tu wpisz choroby zwierzaka oraz jego historię."
onChange={(e) => setStory(e.target.value)}
/>
<input
placeholder="Wrzuć link do zdjęcie zwierzaka"
className="default-input"
name="photo"
type="text"
defaultValue={photo}
onChange={(e) => setPhoto(e.target.value)}
/>
<div>
<label className="date-label" htmlFor="">Od:
<input
type="date"
className="date-input"
defaultValue={from}
onChange={(e) => setFrom(e.target.value)}
/>
</label>
<label htmlFor="" className="date-label">Do:
<input
type="date"
className="date-input"
defaultValue={to}
onChange={(e) => setTo(e.target.value)}
/>
</label>
</div>
<button className="submit-button-care">Szukaj opieki</button>
</form>
</div>
<div className="adoption-cards-care container">
<h3 className="care-title">Szukam opieki</h3>
<ul className="cards-list">
{
Object.keys(animals).map((id) => {
return (
<li key={animals[id].id} className="card-item">
<div className="card">
<div className="photo-container">
<img src={animals[id].photo} alt="animal-photo" className="animal-photo"/>
</div>
<div className="animal-info">
<p>
<span>Imię:</span>{animals[id].name}
</p>
<p>
<span>Gatunek:</span>{animals[id].type}
</p>
<p>
<span>Płeć:</span>{animals[id].sex}
</p>
<p>
<span>Wiek:</span>{animals[id].age}
</p>
<p className="date-info">
<span>Od:</span> {animals[id].from}
</p>
<p className="date-info">
<span>Do:</span> {animals[id].to}
</p>
</div>
<div className="animal-description">
<p className="description-title">Opis:</p>
<p className="animal-story">{animals[id].story}</p>
<button className="care-btn">Opiekuj się</button>
</div>
</div>
</li>
)
})
}
</ul>
</div>
</>
);
}
export default Care;
和 firebase 配置:
import { initializeApp } from "firebase/app";
import { getAnalytics } from "firebase/analytics";
import {getAuth} from "firebase/auth"
import {getDatabase} from "firebase/database";
const firebaseConfig = {
apiKey: "X",
authDomain: "X",
databaseURL: "X",
projectId: "X",
storageBucket: "X",
messagingSenderId: "X",
appId: "X",
measurementId: "X"
};
const app = initializeApp(firebaseConfig);
const analytics = getAnalytics(app);
export const db = getDatabase(app);
export const auth = getAuth(app);
尝试从 compat
导入 Firebase& 仅导出数据库
import firebase from 'firebase/compat/app';
import 'firebase/compat/auth';
import 'firebase/compat/firestore';
const firebaseConfig = {
apiKey: "X",
authDomain: "X",
projectId: "X",
storageBucket: "X",
messagingSenderId: "X",
appId: "X",
measurementId: "X"
};
const db = firebase.initializeApp(firebaseConfig);
export default db;
在另一端导入数据库和您想要使用的应用程序
import db from './db';
import { getAuth, signInWithEmailAndPassword } from 'firebase/auth'