ในการเริ่มต้นอย่างรวดเร็วนี้ คุณจะได้สร้างและติดตั้งใช้งานฐานข้อมูลตัวอย่างขนาดเล็ก รวมถึงเข้าถึงฐานข้อมูลจากส่วนหน้าของ React
ข้อกำหนดเบื้องต้น
คุณต้องมีสิ่งต่อไปนี้เพื่อทําคู่มือเริ่มใช้งานฉบับย่อนี้ให้เสร็จสมบูรณ์
- สภาพแวดล้อม Node.js ที่มี NPM
- บัญชี Google
บทแนะนำ
| บทแนะนำ | |
|---|---|
1. เริ่มต้นโปรเจ็กต์สร้างไดเรกทอรีใหม่และเริ่มต้นโปรเจ็กต์ Firebase ในไดเรกทอรีนั้น เมื่อได้รับแจ้ง ให้เลือกตัวเลือกต่อไปนี้
|
|
2. ตรวจสอบตัวอย่างคำจำกัดความ GraphQLใน Data Connect คุณจะกำหนดสคีมาและการดำเนินการของฐานข้อมูลทั้งหมด โดยใช้ GraphQL เมื่อเริ่มต้นโปรเจ็กต์ Firebase CLI จะสร้างคำจำกัดความตัวอย่าง บางรายการเพื่อให้คุณเริ่มต้นใช้งานได้ |
dataconnect/schema/schema.gql (ข้อความที่ตัดตอนมา)
type Movie @table { title: String! imageUrl: String! genre: String } type MovieMetadata @table { movie: Movie! @unique rating: Float releaseYear: Int description: String } query ListMovies @auth(level: PUBLIC) { movies { id title imageUrl genre } } |
3. ทำให้สคีมาและการดำเนินการของคุณใช้งานได้เมื่อใดก็ตามที่คุณทำการเปลี่ยนแปลงสคีมาฐานข้อมูล คำค้นหา หรือการเปลี่ยนแปลง คุณจะต้องทำให้ใช้งานได้เพื่อให้การเปลี่ยนแปลงมีผลกับฐานข้อมูล |
|
4. เริ่มต้นฐานข้อมูลด้วยข้อมูลตัวอย่างข้อมูลเริ่มต้นนี้จะช่วยให้คุณมีข้อมูลที่จะดูเมื่อทดสอบแอปตัวอย่าง โปรดทราบว่าในขั้นตอนนี้ คุณกำลังเรียกใช้ GraphQL ที่กำหนดเอง ซึ่งอนุญาตให้ใช้สำหรับงานด้านการดูแลระบบ |
|
5. สร้าง SDK ไคลเอ็นต์ JavaScriptคำสั่งนี้ใช้คำจำกัดความ GraphQL เพื่อสร้างไลบรารี JavaScript สำหรับฐานข้อมูลของคุณโดยเฉพาะ พร้อมด้วยคำจำกัดความประเภท คุณใช้ไลบรารีนี้ ในแอปไคลเอ็นต์เพื่อดำเนินการกับฐานข้อมูลทั้งหมด คุณสร้างไลบรารีสำหรับหลายแพลตฟอร์มได้ ซึ่งรวมถึง Kotlin สำหรับ Android, Swift สำหรับ iOS และ Flutter โดยการเพิ่มคำจำกัดความลงใน |
export interface ListMoviesData { movies: ({ id: UUIDString; title: string; imageUrl: string; genre?: string | null; } & Movie_Key)[]; } export function useListMovies( options?: useDataConnectQueryOptions&<ListMoviesData> ): UseDataConnectQueryResult&<ListMoviesData, undefined>; |
6. ตั้งค่าเว็บแอปเรียกใช้คำสั่งต่อไปนี้เพื่อเพิ่มเว็บแอปใหม่ลงในโปรเจ็กต์ Firebase |
|
7. เขียนไคลเอ็นต์ React ตัวอย่างแทนที่เนื้อหาของ โปรดทราบว่าแอปจะเข้าถึงฐานข้อมูลที่จำเป็นโดยใช้ฟังก์ชันจาก SDK ที่สร้างขึ้น SDK ที่สร้างขึ้นสำหรับ React ใช้ TanStack Query เพื่อจัดการสถานะ |
import { initializeApp } from 'firebase/app'; import firebaseConfig from './firebase-config.json'; import { QueryClient, QueryClientProvider } from '@tanstack/react-query'; import { useListMovies } from '@dataconnect/generated/react'; import './App.css'; const app = initializeApp(firebaseConfig); const queryClient = new QueryClient(); function App() { return ( <QueryClientProvider client={queryClient}> <Movies /> </QueryClientProvider> ); } function Movies() { const { isLoading, data } = useListMovies(); if (isLoading) { return <h1>...</h1> } return ( <> {data?.movies.map( movie => <h1 key={movie.id}>{movie.title}</h1> )} </> ); } export default App; |
8. ลองใช้เว็บแอปเริ่มเซิร์ฟเวอร์การพัฒนาเพื่อดูแอปตัวอย่างที่ทำงาน |
|
ขั้นตอนถัดไป
ลองใช้ส่วนขยาย Data Connect VS Code
เมื่อพัฒนาด้วย Data Connect เราขอแนะนําอย่างยิ่งให้ใช้ส่วนขยาย Data Connect VS Code แม้ว่าคุณจะไม่ได้ใช้ Visual Studio Code เป็นสภาพแวดล้อมการพัฒนาหลัก ส่วนขยายก็มีฟีเจอร์หลายอย่างที่ช่วยให้การพัฒนาสคีมาและการดำเนินการ สะดวกยิ่งขึ้น
- เซิร์ฟเวอร์ภาษา GraphQL ที่ให้การตรวจสอบไวยากรณ์และคำแนะนำในการเติมข้อความอัตโนมัติที่เจาะจงสำหรับ Data Connect
- ปุ่ม CodeLens ในบรรทัดเดียวกับโค้ดที่ช่วยให้คุณอ่านและเขียนข้อมูลจากไฟล์คำจำกัดความของสคีมา และเรียกใช้การค้นหาและการเปลี่ยนแปลงจากคำจำกัดความของการดำเนินการได้
- ซิงค์ SDK ที่สร้างขึ้นกับคำจำกัดความ GraphQL โดยอัตโนมัติ
- การตั้งค่าโปรแกรมจำลองในเครื่องแบบง่าย
- การนำไปใช้งานในเวอร์ชันที่ใช้งานจริงที่ง่ายขึ้น
ใช้Data Connectโปรแกรมจำลองสำหรับ การพัฒนาภายใน
แม้ว่าบทแนะนำนี้จะแสดงวิธีทำให้ใช้งานได้สคีมาและโอเปอเรชัน Data Connect ไปยังเวอร์ชันที่ใช้งานจริงโดยตรง แต่คุณอาจไม่ต้องการทำการเปลี่ยนแปลงฐานข้อมูลเวอร์ชันที่ใช้งานจริง ขณะที่กำลังพัฒนาแอปอยู่ ให้ตั้งค่าData Connectโปรแกรมจำลอง และทำงานพัฒนาแอปกับโปรแกรมจำลองแทนเวอร์ชันที่ใช้งานจริง โปรแกรมจำลองจะตั้งค่าอินสแตนซ์ PGlite ในเครื่อง ซึ่งทำงานคล้ายกับอินสแตนซ์ Postgres ที่ใช้งานจริงใน CloudSQL
ดูวิธีเขียนสคีมาและ การดำเนินการสำหรับแอป
เมื่อพัฒนาแอปด้วย Data Connect การออกแบบสคีมาและการดำเนินการ เป็นหนึ่งในงานพัฒนาแรกๆ และสำคัญที่สุดที่คุณจะต้องทำ
- Gemini ในคอนโซล Firebase เป็นเครื่องมือ AI ที่สร้างData Connectสคีมาจากคำอธิบายแอปในภาษาที่เป็นธรรมชาติได้ เครื่องมือนี้ช่วยให้คุณเริ่มต้นใช้งานได้อย่างรวดเร็ว โดยเฉพาะอย่างยิ่งหากคุณไม่เคยทำงานกับ ฐานข้อมูลเชิงสัมพันธ์มาก่อน
- หรือจะเขียนสคีมาฐานข้อมูล การค้นหา และการเปลี่ยนแปลงโดยตรงโดยใช้ GraphQL ก็ได้ เริ่มต้นที่หน้าสคีมาData Connectการออกแบบ แล้วไปที่หน้าถัดไปเพื่อดูวิธีเขียนการดำเนินการ