SubQuery开发者指南丨创建一个SubQuery项目

SubQuery中文站
个人专栏
热度: 10070

一文教你如何创建一个 SubQuery 项目。

快速入门指南中,我们快速浏览了一个示例,让您了解了 SubQuery 是什么以及它是如何工作的。 在这篇文章中,我们将仔细介绍创建项目时的工作流程以及您将使用的关键文件。

 

基本工作流程

 

以下一些示例会假定您已成功初始化快速入门部分中的入门文件包。 我们将逐步完成自定义和实施您的 SubQuery 项目的标准流程。

 

1、使用 subql init PROJECT_NAME 初始化您的项目

 

2、更新清单文件 (project.yaml) ——加入关于您的区块链的信息和您将映射的实体的信息——请参阅清单文件:https://doc.subquery.network/create/manifest.html

 

3、在您的架构 (schema.graphql) 中创建 GraphQL entities,该 GraphQL entities 定义了您将提取并保留来用于查询的数据的类型——请参阅 GraphQL 架构:https://doc.subquery.network/create/graphql.html

                

4、添加所有您希望用来将链数据转换为您定义的 GraphQL entities 的映射函数(例如,mappingHandlers.ts) ——请参阅 Mapping:https://doc.subquery.network/create/mapping.html

 

5、生成、构建您的代码并将其发布到 SubQuery 项目中(或在您自己的本地节点中运行)——请参阅我们的快速入门指南中的“运行和查询您的入门项目”。

 

目录结构

 

下图概述了运行 init 命令时一个 SubQuery 项目的目录结构。

 

项目

 

例如:

 

项目

 

代码生成

 

无论你想何时更改 GraphQL entities,都必须使用以下命令重新生成类型目录。

 


yarn codegen

 

这将创建一个新src/types目录(或更新现有的目录),您之前在 schema.graphql 中定义的每种类型生成的实体类别就包含在新目录中,包括类型安全 entity 加载、对 entity 字段的读写访问——在 GraphQL Schema 中查看有关此过程的更多信息。https://doc.subquery.network/create/graphql.html

 

构建

 

为了在本地托管的 SubQuery 节点上运行您的 SubQuery 项目,您需要首先构建您的项目。

 

从项目的根目录运行构建命令。

 


yarn build

 


npm run-script build

 


// Make sure to add code blocks to your code group

 

注册

 

SubQuery 不再支持 console.log 命令。 取而代之,我们在类型中注入了一个 logger 模块,这意味着我们可以支持能接受各种注册级别的注册器。

 


logger.info('Info level message'); logger.debug('Debugger level message'); logger.warn('Warning level message');

 

要运行 logger.info 或 logger.warn 命令,只需将该行放入映射文件中。

 

项目

 

要运行 logger.debug 命令,需要一个额外的步骤。 将 --log-level=debug 添加到您的命令行。

 

如果您正在运行 docker 包,请将此行添加到您的 docker-compose.yml 文件中。

 

项目

 

您现在应该会在终端屏幕中看到新的注册信息。

 

项目


声明:本文为入驻“火星财经 专栏”作者作品,不代表火星财经官方立场。
转载请联系网页底部:内容合作栏目,邮件进行授权。授权后转载时请注明出处、作者和本文链接。未经许可擅自转载本站文章,将追究相关法律责任,侵权必究。
提示:投资有风险,入市须谨慎,本资讯不作为投资理财建议。
本内容旨在传递行业动态,不构成投资建议或承诺。