hardhat安装和使用

1、建项目空文件夹

mkdir hardhattest

2、切到文件夹内,执行npm init 

cd hardhattest

npm init

3、安装hardhat

npm install --save-dev hardhat

4、在项目文件夹中创建Hardhat项目

npx hardhat

hardhat项目创建就完成了,创建成功后打开vscode是这样子的:

项目目录结构

 将contracts、scripts、test目录下的样式文件删除。

hardhat提示:

还需要安装依赖:

npm install --save-dev "hardhat@^2.17.0" "@nomicfoundation/hardhat-toolbox@^3.0.0"

安装依赖

npm install --save-dev "hardhat@^2.17.0" "@nomicfoundation/hardhat-toolbox@^3.0.0"

官方提示还要安装其他依赖:

npm install --save-dev @nomiclabs/hardhat-waffle ethereum-waffle chai @nomiclabs/hardhat-ethers ethers(一直报错,没安装上)

5、编写合约文件(过程省略),编译合约,编译后的文件默认保存在artifacts/目录下。

输入如下命令:

npx hardhat compile

得到如下结果:即编译成功 

6、部署合约

在scripts中建deploy.js部署文件,在该文件中输入如下代码(其他合约,只需要修改合约文件名称)(注意,deployContract("Add"),中的Add是合约名称,不是合约文件名称,与truffle一样)。

const hre = require("hardhat");

async function main() {
    const add = await hre.ethers.deployContract("Add");
    await add.waitForDeployment();
    console.log( `Add deployed to ${add.target}`);
}

main().catch((error) => {
    console.error(error);
    process.exitCode = 1;
});

运行部署命令

PS D:\voting\hardhat_1> npx hardhat run .\scripts\deploy.js

得到结果:

Add deployed to 0x5FbDB2315678afecb367f032d93F642f64180aa3

即部署成功,这是在hardhat的localhost本地网络上部署。

7、测试合约

在test文件夹下,建test\Add.js的测试文件,在文件内输入测试代码,其他合约测试代码根据这个进行改写。

const { expect } = require("chai");

describe("Add", function () {
  it("should return the sum of two numbers", async function () {
    const Add = await ethers.getContractFactory("Add");
    const add = await Add.deploy();

    const result = await add.add(2, 3);
    expect(result).to.equal(5);
  });
});

 运行测试文件

npx hardhat

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值