Cách tạo một project sử dụng SubQuery:

SubQuery TeamKhoảng 4 phút

Cách tạo một project sử dụng SubQuery:

Trong hướng dẫn bắt đầu nhanh , chúng tôi đã đưa ra một ví dụ ngắn gọn để bạn hiểu SubQuery là gì và nó hoạt động như thế nào. Ở đây chúng ta sẽ xem xét kỹ hơn quy trình làm việc để tạo ra một dự án và các tập tin chính mà bạn sẽ sử dụng.

Quy trình làm việc cơ bản:

Một vài ví dụ sau có điều kiện tiên quyết là bạn đã khởi động thành công gói khởi động trong phần Bắt đầu nhanh . Từ gói khởi động đó, chúng tôi sẽ hướng dẫn quy trình chuẩn để tùy chỉnh và triển khai dự án SubQuery của bạn.

  1. Khởi tạo dự án của bạn bằng subql init PROJECT_NAME.
  2. Cập nhật tệp kê khai (project.yaml) để đưa vào thông tin về blockchain của bạn và các thực thể mà bạn sẽ ánh xạ - xem Manifest File
  3. Tạo các thực thể GraphQL trong lược đồ của bạn (schema.graphql) nhằm định nghĩa dạng của dữ liệu mà bạn sẽ trích xuất và duy trì để truy vấn - xem Lược đồ GraphQL
  4. Thêm tất cả các hàm ánh xạ (ví dụ: mappingHandlers.ts) mà bạn muốn gọi để chuyển đổi dữ liệu chuỗi thành các thực thể GraphQL mà bạn đã xác định - xem Ánh xạ
  5. Tạo, xây dựng và xuất bản code của bạn lên các dự án SubQuery (hoặc chạy trong node cục bộ của riêng bạn) - xem Hướng dẫn chạy và truy vấn Dự án bắt đầu của bạn trong hướng dẫn bắt đầu nhanh của chúng tôi.

Cấu trúc thư mục

Bản đồ sau cung cấp một cái nhìn tổng quan về cấu trúc thư mục của một dự án SubQuery khi lệnh init được chạy.

- project-name
  L package.json
  L project.yaml
  L README.md
  L schema.graphql
  L tsconfig.json
  L docker-compose.yml
  L src
    L index.ts
    L mappings
      L mappingHandlers.ts
  L .gitignore

Ví dụ:

Cấu trúc thư mục SubQuery

Tạo mã

Bất cứ khi nào bạn thay đổi các thực thể GraphQL của mình, bạn phải tạo lại thư mục types của mình bằng lệnh sau.

yarn codegen

Thao tác này sẽ tạo một thư mục mới (hoặc cập nhật thư mục hiện có) src/styles là nơi chứa các lớp thực thể được tạo cho mỗi loại mà bạn đã định nghĩa trước đó trong schema.graphql. Các lớp này cung cấp quyền truy cập tải, đọc và ghi thực thể an toàn về kiểu đối với các trường thực thể - xem thêm về quy trình này trong Lược đồ GraphQL.

Xây dựng

Để chạy Dự án SubQuery của bạn trên một Node SubQuery được lưu trữ cục bộ, trước tiên bạn cần tự xây dựng dự án của riêng bạn.

Chạy lệnh xây dựng từ thư mục gốc của dự án.

::: code-tabs @tab:active yarn shell yarn build