npm 包 @nomiclabs/buidler-ethers 使用教程

阅读时长 5 分钟读完

在以太坊的开发中,智能合约的部署和调用是必不可少的环节。为了方便地进行这些操作,需要使用一些工具。@nomiclabs/buidler-ethers 是一款专门为开发者提供的工具,旨在简化以太坊的开发过程。本篇文章将对 @nomiclabs/buidler-ethers 进行详细的介绍和使用教程。

什么是 @nomiclabs/buidler-ethers?

@nomiclabs/buidler-ethers 是一款用于以太坊开发的工具。它基于 buidler,并提供了一个集成了 ethers.js 功能的开发框架。通过使用它,你可以更加方便和高效地进行以太坊开发。

安装

在开始使用之前,需要先安装 @nomiclabs/buidler-ethers。可以通过 npm 进行安装,命令如下:

使用

配置

首先需要在项目根目录下新建一个本地配置文件 buidler.config.js,内容如下:

-- -------------------- ---- -------
---------------------------------------

-------------- - -
  --------- -
    ----------- -
      --------- -
        -
          ----------- -------
        --
        -
          ----------- -------
        -
      --
      ---- ---------
      --------- ----------
    --
    -------- -
      ---- -----------------------------------
      --------- -
        --------- -----
      --
      ---- ---------
      --------- ----------
    -
  -
--

这里定义了两个网络: buidlerevmrinkeby。其中 buidlerevm 是 buidler 自带的沙箱网络,用于本地测试; rinkeby 则是以太坊 rinkeby 测试网络。在每个网络中,定义了账户及其私钥、链的 gas 和 gasPrice 等信息。

部署智能合约

创建一个智能合约 MyContract.sol,内容如下:

-- -------------------- ---- -------
------ -------- -------

-------- ---------- -
  ---- ------ -----

  -------- ------------ ------ ------ -
    ---- - ------
  -
-

使用 @nomiclabs/buidler-ethers 进行部署,代码如下:

-- -------------------- ---- -------
----- - ------ - - ------------------------------
----- -------- - ----------------------------------------

----- -------- ------ -
  ----- ---------- - ----- --------------------

  ---------------------- -------- ---- --- ---------- ------------------

  ----- ---------- - ----- ----------------------------------------
  ----- ---------- - ----- --------------------

  ----------------------- ---------- --------------------
-

-------------- -- ---------------------------- -- -
  ---------------------
  ----------------
---

这里采用的是默认的 buidlerevm 网络进行测试,部署后会输出智能合约的地址。

调用智能合约

继续以 MyContract.sol 为例,调用智能合约的代码如下:

-- -------------------- ---- -------
----- - ------ - - ------------------------------
----- -------- - ----------------------------------------

----- -------- ------ -
  ----- ---------- - ----- --------------------

  ----- ---------- - ----- ----------------------------------------
  ----- ---------- - ----- ------------------------------------------

  ----- ------------------------

  ----- ---- - ----- ------------------
  ----------------- -- ------------- -----------------
-

-------------- -- ---------------------------- -- -
  ---------------------
  ----------------
---

这里使用 buidlerevm 网络作为测试网络,并使用 MyContract.attach 连接到已经部署的合约。调用 myContract.setData(100),修改智能合约中的 data 值,再通过 myContract.data() 获取 data 值,并输出到控制台。

总结

本文介绍了 @nomiclabs/buidler-ethers 的使用方法,从安装、配置、部署到调用都有详细的说明。这个工具大大简化了以太坊开发的流程,提升了开发效率。希望本文能对广大开发者有所帮助。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/5f38a25edbf7be33b2566f74

纠错
反馈