Tutorials & Examples

SubQuery TeamОколо 2 мин

Tutorials & Examples

В инструкции быстрого старта, мы очень быстро разобрали пример, чтобы показать Вам, что такое SubQuery и как он работает. В данной статье, мы более подробно рассмотрим рабочий процесс создания вашего проекта и ключевых файлов, с которыми вы будете работать.

Базовый рабочий процесс

Некоторые из следующих примеров предполагают, что вы успешно запустили стартовый пакет из в раздела Быстрый старт. На основе этого стартового пакета мы пройдем через стандартный процесс настройки и реализации вашего проекта SubQuery.

  1. Инициализируйте ваш проект используя subql init PROJECT_NAME.
  2. Обновите файл манифеста (проект. aml), чтобы включить информацию о вашем блокчейне, и сущности, которые вы собираетесь сопоставить - см. Файл манифеста
  3. Создайте GraphQL сущности в вашей схеме (schema.raphql), которые определяют форму ваших данных, которые вы будете извлекать и использовать для запроса - см. GraphQL Schema
  4. Добавьте все функции сопоставления (например, mappingHandlers.ts), которые вы хотите использовать для преобразования данных цепи в GraphQL сущности, которые вы определили ранее - см. Mapping
  5. Сгенерируйте, постройте, и опубликуйте ваш код в SubQuery Projects (или запустите на вашем локальном узле) - см. Запуск и запрос вашего стартового проекта в нашей инструкции быстрого старта.

Структура каталогов

На следующей карте представлен обзор структуры каталогов проекта SubQuery при выполнении команды init.

- project-name
  L package.json
  L проект. aml
  L README.md
  L schema.graphql
  L tsconfig. son
  L docker-compose.yml
  L src
    L index. s
    L сопоставления
      L mappingHandlers.ts
  L .gitignore

Пример:

Структура каталогов SubQuery

Генерирование кода

Каждый раз, когда вы меняете сущности GraphQL, вы должны регенерировать типы каталогов следующей командой.

yarn codegen

Это команда создаст новый каталог (или обновит существующий) src/types, который содержит сгенерированные классы сущностей для каждого типа, который вы ранее задали в schema.graphql. Эти классы обеспечивают безопасную загрузку сущностей, доступ к чтению и записи на поле сущности - подробнее об этом процессе можно прочитать на GraphQL-схеме.

Сборка

Для того, чтобы запустить проект SubQuery на локальном узле SubQuery Node, вам нужно сначала собрать свою работу.

Запустите команду сборки из корневого каталога проекта.

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