Trong hướng dẫn bắt đầu nhanh này, bạn sẽ tạo và triển khai một cơ sở dữ liệu mẫu nhỏ, đồng thời truy cập vào cơ sở dữ liệu đó từ một giao diện người dùng React.
Điều kiện tiên quyết
Để hoàn tất hướng dẫn bắt đầu nhanh này, bạn cần có những điều sau:
- Môi trường Node.js có NPM.
- Tài khoản Google.
Hướng dẫn
| Hướng dẫn | |
|---|---|
1. Chạy dự án của bạnTạo một thư mục mới và chạy dự án Firebase trong thư mục đó. Khi được nhắc, hãy chọn các lựa chọn sau:
|
|
2. Xem lại các định nghĩa GraphQL mẫuTrong Data Connect, bạn xác định tất cả các giản đồ và thao tác cơ sở dữ liệu bằng GraphQL. Khi bạn chạy dự án, Firebase CLI sẽ tạo một số định nghĩa mẫu để giúp bạn bắt đầu. |
dataconnect/schema/schema.gql (excerpt)
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. Triển khai giản đồ và thao tácBất cứ khi nào bạn thay đổi giản đồ, truy vấn hoặc đột biến cơ sở dữ liệu, bạn phải triển khai các thay đổi đó để có hiệu lực trên cơ sở dữ liệu. |
|
4. Gieo dữ liệu mẫu vào cơ sở dữ liệuDữ liệu gốc này sẽ cung cấp cho bạn một số thông tin để xem khi bạn kiểm thử ứng dụng mẫu. Xin lưu ý rằng trong bước này, bạn đang thực thi GraphQL tuỳ ý, được phép cho các tác vụ quản trị. |
|
5. Tạo SDK JavaScript cho ứng dụngLệnh này sử dụng các định nghĩa GraphQL để tạo một thư viện JavaScript dành riêng cho cơ sở dữ liệu của bạn, hoàn chỉnh với các định nghĩa kiểu. Bạn sử dụng thư viện này trong ứng dụng máy khách để thực hiện tất cả các thao tác cơ sở dữ liệu. Bạn có thể tạo thư viện cho nhiều nền tảng, bao gồm Kotlin cho Android,
Swift cho iOS, và Flutter, bằng cách thêm các định nghĩa vào |
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. Thiết lập ứng dụng webChạy các lệnh này để thêm một ứng dụng web mới vào dự án Firebase. |
|
7. Viết một ứng dụng React mẫuThay thế nội dung của Xin lưu ý rằng ứng dụng này hoàn tất việc truy cập cơ sở dữ liệu cần thiết bằng một hàm từ SDK đã tạo. SDK đã tạo cho React sử dụng TanStack Query để xử lý việc quản lý trạng thái. |
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. Dùng thử ứng dụng webKhởi động máy chủ phát triển để xem ứng dụng mẫu đang hoạt động. |
|
Các bước tiếp theo
Dùng thử tiện ích Data Connect VS Code
Khi phát triển bằng Data Connect, bạn nên sử dụng tiện ích Data Connect VS Code. Ngay cả khi bạn không sử dụng Visual Studio Code làm môi trường phát triển chính, tiện ích này vẫn cung cấp một số tính năng giúp việc phát triển giản đồ và thao tác trở nên thuận tiện hơn:
- Một máy chủ ngôn ngữ GraphQL, cung cấp tính năng kiểm tra cú pháp và các cụm từ gợi ý tự động hoàn thành dành riêng cho Data Connect
- Các nút CodeLens cùng dòng với mã của bạn cho phép bạn đọc và ghi dữ liệu từ các tệp định nghĩa giản đồ và thực thi các truy vấn và đột biến từ các định nghĩa thao tác.
- Tự động giữ cho các SDK đã tạo được đồng bộ hoá với các định nghĩa GraphQL.
- Thiết lập trình mô phỏng cục bộ đơn giản.
- Triển khai đơn giản vào môi trường phát hành công khai.
Sử dụng trình mô phỏng Data Connect để phát triển cục bộ
Mặc dù hướng dẫn này cho bạn biết cách triển khai trực tiếp các giản đồ Data Connect và thao tác vào môi trường thực tế, nhưng có thể bạn sẽ không muốn thay đổi cơ sở dữ liệu môi trường thực tế trong khi đang tích cực phát triển ứng dụng. Thay vào đó, hãy thiết lập Data Connect trình mô phỏng và thực hiện công việc phát triển trên trình mô phỏng này thay vì môi trường thực tế. Trình mô phỏng thiết lập một thực thể PGlite cục bộ hoạt động tương tự như một thực thể Postgres trực tiếp trên CloudSQL.
Tìm hiểu cách viết giản đồ và thao tác cho ứng dụng
Khi phát triển ứng dụng bằng Data Connect, việc thiết kế giản đồ và thao tác là một trong những nhiệm vụ phát triển đầu tiên và quan trọng nhất mà bạn sẽ hoàn thành.
- Gemini trong bảng điều khiển Firebase là một công cụ AI có thể tạo giản đồ Data Connect từ nội dung mô tả bằng ngôn ngữ tự nhiên về ứng dụng của bạn. Công cụ này có thể giúp bạn bắt đầu rất nhanh, đặc biệt nếu bạn chưa từng làm việc với cơ sở dữ liệu quan hệ.
- Ngoài ra, bạn có thể viết trực tiếp các giản đồ, truy vấn và đột biến cơ sở dữ liệu bằng GraphQL. Bắt đầu với trang Thiết kế Data Connect giản đồ Data Connect và tiếp tục đến các trang tiếp theo để tìm hiểu cách viết thao tác.