建立 Firebase 支援的 React 應用程式:開發人員綜合指南
Firebase 和 React 是現代 Web 開發世界中充滿活力的二人組。 Firebase 簡化了後端複雜性,而 React 提供了無與倫比的前端效率。本指南逐步探索如何將 Firebase 整合到 React 應用程式中,為開發人員提供詳細的見解。
簡介
在本教程中,我們將使用 Firebase 和 React 建立一個即時任務管理應用程式。主要功能包括:
身份驗證:用於使用者登入/註冊的 Firebase 驗證。
資料庫:Firestore,用於儲存任務。
託管:在 Firebase 託管上部署應用程式。
先決條件
要繼續進行操作,請確保您擁有:
React 和 Firebase 的基礎知識。
已安裝 Node.js。
Firebase 帳戶(免費套餐即可)。
設定環境
- 初始化 React 應用程式
先建立一個 React 應用程式:
npx create-react-app task-manager cd task-manager npm start
- 將 Firebase 加入您的專案
安裝 Firebase SDK:
npm 安裝 firebase
建立 Firebase 專案:
前往 Firebase 控制台。
點選「新增項目」並依照步驟操作。
建立後,導覽至「專案設定」>一般> Firebase SDK Snippet,然後複製配置。
將 Firebase 整合到 React
- 設定 Firebase 配置
在 src/ 中建立 firebase.js 檔案:
import { initializeApp } from "firebase/app"; import { getAuth } from "firebase/auth"; import { getFirestore } from "firebase/firestore"; const firebaseConfig = { apiKey: "YOUR_API_KEY", authDomain: "YOUR_PROJECT_ID.firebaseapp.com", projectId: "YOUR_PROJECT_ID", storageBucket: "YOUR_PROJECT_ID.appspot.com", messagingSenderId: "YOUR_SENDER_ID", appId: "YOUR_APP_ID" }; const app = initializeApp(firebaseConfig); export const auth = getAuth(app); export const db = getFirestore(app);
建築特色
- 身份驗證
Firebase 驗證簡化了使用者登入。我們將建立一個註冊和登入表單。
註冊組件
import React, { useState } from "react"; import { auth } from "../firebase"; import { createUserWithEmailAndPassword } from "firebase/auth"; function SignUp() { const [email, setEmail] = useState(""); const [password, setPassword] = useState(""); const handleSignUp = async () => { try { await createUserWithEmailAndPassword(auth, email, password); alert("User Registered Successfully"); } catch (error) { alert(error.message); } }; return ( <div> <h2>Sign Up</h2> <input type="email" placeholder="Email" value={email} onChange={(e) => setEmail(e.target.value)} /> <input type="password" placeholder="Password" value={password} onChange={(e) => setPassword(e.target.value)} /> <button onClick={handleSignUp}>Sign Up</button> </div> ); } export default SignUp;
登入組件
遵循類似的方法,但使用signInWithEmailAndPassword 來實現登入功能。
- Firestore 資料庫 讓我們建立一個即時任務列表,使用者可以在其中新增、編輯和刪除任務。
新增任務
import { db } from "../firebase"; import { collection, addDoc } from "firebase/firestore"; function AddTask() { const [task, setTask] = useState(""); const handleAddTask = async () => { try { await addDoc(collection(db, "tasks"), { name: task, completed: false, }); setTask(""); } catch (error) { console.error("Error adding document: ", error); } }; return ( <div> <input type="text" placeholder="Add Task" value={task} onChange={(e) => setTask(e.target.value)} /> <button onClick={handleAddTask}>Add Task</button> </div> ); } export default AddTask;
顯示任務
import { useEffect, useState } from "react"; import { db } from "../firebase"; import { collection, onSnapshot } from "firebase/firestore"; function TaskList() { const [tasks, setTasks] = useState([]); useEffect(() => { const unsubscribe = onSnapshot(collection(db, "tasks"), (snapshot) => { setTasks(snapshot.docs.map((doc) => ({ id: doc.id, ...doc.data() }))); }); return () => unsubscribe(); }, []); return ( <ul> {tasks.map((task) => ( <li key={task.id}>{task.name}</li> ))} </ul> ); } export default TaskList;
使用 Firebase 託管進行部署
- 安裝 Firebase 工具
npm install -g firebase-tools
- 初始化託管
執行以下指令:
firebase login firebase init hosting
選擇您的項目。
設定建置目錄來建置。
- 建置與部署
npm run build firebase deploy
您的應用程式現在將在 Firebase Hosting 上上線!
結論
恭喜!您已經使用 Firebase 和 React 建立了一個任務管理應用,並完成了身份驗證、資料庫整合和託管。 Firebase 與 React 的無縫整合可實現強大、可擴展的應用程式。
加入獨立革命
您準備好展示您的遊戲了嗎?您可以按照以下方式開始:
?參觀獨立遊戲展示:https://gladiatorsbattle.com/indie-games
?在 Twitter 上關注我們:https://x.com/GladiatorsBT
與我們保持聯繫:
? https://discord.gg/YBNF7KjGwx | https://gladiatorsbattle.com/
讓我們讓獨立遊戲世界變得更美好-一次一款遊戲。 ?✨
以上是建立 Firebase 支援的 React 應用程式:開發人員綜合指南的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

JavaScript是現代Web開發的基石,它的主要功能包括事件驅動編程、動態內容生成和異步編程。 1)事件驅動編程允許網頁根據用戶操作動態變化。 2)動態內容生成使得頁面內容可以根據條件調整。 3)異步編程確保用戶界面不被阻塞。 JavaScript廣泛應用於網頁交互、單頁面應用和服務器端開發,極大地提升了用戶體驗和跨平台開發的靈活性。

Python和JavaScript開發者的薪資沒有絕對的高低,具體取決於技能和行業需求。 1.Python在數據科學和機器學習領域可能薪資更高。 2.JavaScript在前端和全棧開發中需求大,薪資也可觀。 3.影響因素包括經驗、地理位置、公司規模和特定技能。

實現視差滾動和元素動畫效果的探討本文將探討如何實現類似資生堂官網(https://www.shiseido.co.jp/sb/wonderland/)中�...

JavaScript的最新趨勢包括TypeScript的崛起、現代框架和庫的流行以及WebAssembly的應用。未來前景涵蓋更強大的類型系統、服務器端JavaScript的發展、人工智能和機器學習的擴展以及物聯網和邊緣計算的潛力。

如何在JavaScript中將具有相同ID的數組元素合併到一個對像中?在處理數據時,我們常常會遇到需要將具有相同ID�...

不同JavaScript引擎在解析和執行JavaScript代碼時,效果會有所不同,因為每個引擎的實現原理和優化策略各有差異。 1.詞法分析:將源碼轉換為詞法單元。 2.語法分析:生成抽象語法樹。 3.優化和編譯:通過JIT編譯器生成機器碼。 4.執行:運行機器碼。 V8引擎通過即時編譯和隱藏類優化,SpiderMonkey使用類型推斷系統,導致在相同代碼上的性能表現不同。

探索前端中類似VSCode的面板拖拽調整功能的實現在前端開發中,如何實現類似於VSCode...
