thegraph入门教程

本文是一篇The Graph入门教程,详细介绍了如何通过The Graph捕获和查询区块链事件,特别是以太坊智能合约的状态变化。内容包括合约开发与部署、创建Subgraph、部署到本地graph-node、通过GraphQL查询数据以及遇到的问题和解决方案。教程适合熟悉以太坊和GraphQL的开发者学习。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

编写智能合约时,通常状态的变化是通过触发一个事件来表达,The Graph则是捕捉区块链事件并提供一个查询事件的GraphQL接口,让我们可以方便的跟踪数据的变化。 实际上很多 DEFI 协议及都是The Graph来基于查询数据。
https://thegraph.academy/developers/local-development/
我们以此教程为基础做出一下额外的补充。
工具准备:nodejs、yarn、docker、truffle、graph-cli

1. 合约开发与部署

  1. 合约的开发环境搭建
    npm install -g truffle ganache-cli

  2. 合约编写
    该合约为手写的测试合约,主要定义了两个事件,PairCreated和AddLiquidity。我们用thegarph来监听以下的事件。

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;

contract Pair{
   
   

    string private _name;

    uint private _liquidity;

    constructor(string memory name){
   
   
        _name = name;
    }

    function addLiquidity(uint amount) public {
   
   
        _liquidity+=amount;
    }

    function getLiquidity() public view returns(uint){
   
   
        return _liquidity;
    }

    function getName() public view returns
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值