ในการเริ่มต้นอย่างรวดเร็วนี้ คุณจะได้สร้างและติดตั้งใช้งานฐานข้อมูลตัวอย่างขนาดเล็ก รวมถึงเข้าถึงฐานข้อมูลดังกล่าวจาก ส่วนหน้าของ React
ข้อกำหนดเบื้องต้น
คุณจะต้องมีสิ่งต่อไปนี้เพื่อทําการเริ่มต้นอย่างรวดเร็วนี้ให้เสร็จสมบูรณ์
- สภาพแวดล้อม Node.js ที่มี NPM
- บัญชี Google
บทแนะนำ
| บทแนะนำ | |
|---|---|
1. สร้างโปรเจ็กต์ Firebase ใหม่เริ่มต้นด้วยการสร้างโปรเจ็กต์ Firebase ใหม่ในคอนโซล Firebase จากนั้นอัปเกรด โปรเจ็กต์เป็นแพ็กเกจ Blaze |
|
2. เริ่มต้นโปรเจ็กต์สร้างไดเรกทอรีใหม่และเริ่มต้นโปรเจ็กต์ Firebase ในไดเรกทอรีนั้น เมื่อได้รับแจ้ง ให้เลือกตัวเลือกต่อไปนี้
|
|
3. ตรวจสอบตัวอย่างคำจำกัดความ 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 } } |
4. ปรับใช้โครงร่างและการดำเนินการของคุณเมื่อใดก็ตามที่คุณทำการเปลี่ยนแปลงสคีมา ฐานข้อมูล การค้นหา หรือการเปลี่ยนแปลง คุณจะต้อง นําไปใช้เพื่อให้การเปลี่ยนแปลงมีผลกับฐานข้อมูล |
|
5. เพาะฐานข้อมูลด้วยข้อมูลตัวอย่างข้อมูลเริ่มต้นนี้จะช่วยให้คุณมีข้อมูลที่จะดูเมื่อทดสอบแอปตัวอย่าง โปรดทราบว่าในขั้นตอนนี้ คุณกำลังเรียกใช้ GraphQL ที่กำหนดเอง ซึ่งอนุญาตให้ใช้สำหรับงานด้านการดูแลระบบ |
|
6. สร้าง 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>; |
7. ตั้งค่าเว็บแอปเรียกใช้คำสั่งต่อไปนี้เพื่อเพิ่มเว็บแอปใหม่ลงในโปรเจ็กต์ Firebase |
|
8. เขียนไคลเอ็นต์ 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; |
9. ลองใช้เว็บแอปเริ่มต้นเซิร์ฟเวอร์การพัฒนาเพื่อดูตัวอย่างการใช้งานแอป |
|
ขั้นตอนถัดไป
ลองใช้ส่วนขยาย Visual Studio Code
เมื่อพัฒนาด้วย Data Connect เราขอแนะนำให้ใช้ส่วนขยาย Visual Studio 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 การออกแบบ แล้วไปที่หน้าติดตามผลเพื่อดูวิธีเขียนการดำเนินการ