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ừ 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 thứ sau:
- Môi trường Node.js có NPM.
- Tài khoản Google.
Hướng dẫn
| Hướng dẫn | |
|---|---|
1. Tạo một dự án Firebase mớiBắt đầu bằng cách tạo một dự án Firebase mới trong bảng điều khiển Firebase. Sau đó, hãy nâng cấp dự án lên gói Blaze. |
|
2. Khởi chạy dự ánTạo một thư mục mới và khởi chạy một dự án Firebase trong thư mục đó. Khi được nhắc, hãy chọn các lựa chọn sau:
|
|
3. 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 khởi chạy dự án, CLI Firebase đã tạo một số định nghĩa mẫu để giúp bạn bắt đầu. |
dataconnect/schema/schema.gql (đoạn trích)
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. Triển khai giản đồ và các thao tácMỗi khi 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 đó để chúng có hiệu lực trên cơ sở dữ liệu. |
|
5. Điền dữ liệu mẫu vào cơ sở dữ liệuDữ liệu ban đầu này sẽ giúp bạn có thông tin để xem khi 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 thực hiện các tác vụ quản trị. |
|
6. Tạo SDK ứng dụng JavaScriptLệnh này dùng các định nghĩa GraphQL của bạn để 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 khách để thực hiện tất cả các thao tác liên quan đến 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>; |
7. Thiết lập một ứ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 của bạn. |
|
8. Viết một ứng dụng React mẫuThay thế nội dung của Lưu ý rằng ứng dụng hoàn tất quyền truy cập cần thiết vào cơ sở dữ liệu bằng cách sử dụng một hàm từ SDK đã tạo. SDK được 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; |
9. 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
Hãy dùng thử tiện ích Visual Studio Code
Khi phát triển bằng Data Connect, bạn nên sử dụng tiện ích Visual Studio 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 lược đồ 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à đề xuất tự động hoàn thành dành riêng cho Data Connect
- Các nút CodeLens nằm 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 lược đồ, đồng thời thực thi các truy vấn và đột biến từ các định nghĩa thao tác.
- Tự động đồng bộ hoá các SDK đã tạo với định nghĩa GraphQL.
- Đơn giản hoá quá trình thiết lập trình mô phỏng cục bộ.
- Đơn giản hoá việc triển khai cho bản 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 các lược đồ và thao tác Data Connect trực tiếp vào bản phát hành chính thức, nhưng có thể bạn sẽ không muốn thực hiện các thay đổi đối với cơ sở dữ liệu phát hành chính thức trong khi đang tích cực phát triển ứng dụng. Thay vào đó, hãy thiết lập trình mô phỏng Data Connect và thực hiện công việc phát triển dựa trên trình mô phỏng này thay vì bản phát hành chính thức. Trình mô phỏng thiết lập một phiên bản PGlite cục bộ hoạt động tương tự như một phiên bản Postgres đang hoạt động trên CloudSQL.
Tìm hiểu cách viết giản đồ và thao tác cho ứng dụng của bạn
Khi phát triển ứng dụng bằng Data Connect, việc thiết kế các 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 lược đồ 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ệ trước đây.
- Ngoài ra, bạn có thể viết trực tiếp các giản đồ cơ sở dữ liệu, truy vấn và đột biến bằng GraphQL. Bắt đầu với trang Thiết kế Data Connect các giản đồ và tiếp tục xem các trang tiếp theo để tìm hiểu cách viết các thao tác.