DAPP开发框架之hardhat快速入门使用


前言

在对DAPP开发时需要一个框架来提供了一套工具和环境,帮助开发者更轻松地编写、测试和部署智能合约以及与之交互的前端应用程序。除去这次要介绍的hardhat还有Turffle和Embark等等常见的智能合约开发框架

hardhat官网:https://hardhat.org/hardhat-runner/docs/getting-started#quick-start
参考网站:https://segmentfault.com/a/1190000041504179?utm_source=sf-similar-article#item-1
在这里插入图片描述


一、hardhat是什么?

Hardhat 是一个用于以太坊智能合约开发的开源开发框架和工具套件。具有以下主要特点和功能:

  1. 智能合约编译和部署:

Hardhat 可以编译 Solidity 智能合约,并提供简单而灵活的部署脚本,使合约部署过程自动化且可重复。

  1. 本地测试环境:

Hardhat 提供了一个内置的本地测试环境,可以快速运行测试用例,并模拟以太坊网络的行为,使开发者能够快速验证合约的行为。

  1. 智能合约调试:

Hardhat 集成了调试工具,可帮助开发者在本地环境中调试智能合约,加速排查错误并提高代码质量。

  1. 类型安全性:

Hardhat 使用 TypeScript 来编写插件和脚本,这使得代码更具可读性和可维护性,并提供了更强的类型检查。

  1. 插件系统:

Hardhat 具有灵活的插件系统,允许开发者根据需要扩展和定制其功能,从而满足不同项目的需求。

  1. 任务运行器:

Hardhat 提供了一个任务运行器,使开发者能够编写自定义任务来执行各种操作,例如编译合约、运行测试、部署合约等。

  1. 集成测试支持:

Hardhat 支持集成测试,开发者可以编写测试脚本来模拟真实以太坊网络环境,并测试合约在实际使用场景下的行为。

  1. 社区支持和文档:

Hardhat 拥有活跃的社区支持和完善的文档,开发者可以在社区中获取帮助、交流经验,并找到各种使用 Hardhat 的案例和教程。

二、操作步骤

1.安装

新建一个空文件夹,打开命令行,初始化Node.js项目
npm init -y
使用npm下载hardhat
npm install --save-dev hardhat

2.初始化项目

创建hardhat项目
npx hardhat init
在这里插入图片描述
选择创建js项目或者ts项目,也可以是空项目

3.编译合约

在项目创建完成后会出现以下结构,选择第一个js项目后,在contracts/文件夹下出现Lock.sol文件
在这里插入图片描述

编译合约
npx hardhat compile

在初始编译之后,Hardhat 将在您下次编译时尝试做尽可能少的工作。例如,如果自上次编译以来未更改任何文件,则不会编译任何内容:
在这里插入图片描述

4.测试合约

在 test/ 文件夹中查看,你会看到一个测试文件:Lock.js,使用以下命令进行测试
npx hardhat test
在这里插入图片描述

5.部署合约

在文件夹中 ignition/modules有一个文件名为Lock.js,用以下命令部署
npx hardhat ignition deploy ./ignition/modules/Lock.js
或者
npx hardhat run ./ignition/modules/Lock.js
在这里插入图片描述

6.连接钱包到hardhat network

启动hardhat所带的链,它将 公开一个 JSON-RPC 接口。
npx hardhat node

如果要针对hardhat network部署合约的话,还要在后面加上–network localhost
npx hardhat ignition deploy ./ignition/modules/Lock.js --network localhost

在MetaMask里添加该接口所对应的网络
在这里插入图片描述


总结

以上操作实现了harthat创建了一个项目,并编译、测试和部署了一个智能合约,并且将网络连接到钱包里,可以连接hardhat network创建的用户所拥有的资金

  • 25
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值