本文继续通过笔者学习到的抵押赎回智能合约Fund来进一步学习solidity语言,加深对开发的理解,其中通过storage节省gas是需要重点实践的,毕竟涉及到资产

代码已提交至https://gitee.com/SJshenjian/blockchain/tree/master/hardhat-fund-me-fcc

1. 依赖安装

https://gitee.com/SJshenjian/blockchain.git
cd hardhat-fund-me-fcc
yarn

若出现如下错误

fatal: unable to access 'https://github.com/ethereumjs/ethereumjs-abi.git/': OpenSSL SSL_connect: SSL_ERROR_SYSCALL in connection to github.com:443
info Visit https://yarnpkg.com/en/docs/cli/install for documentation about this command.

在yarn.lock中ethereumjs-abi指定具体版本再次执行yarn即可

修改前

eth-sig-util@^1.4.2:version "1.4.2"resolved "https://registry.yarnpkg.com/eth-sig-util/-/eth-sig-util-1.4.2.tgz#8d958202c7edbaae839707fba6f09ff327606210"integrity sha1-jZWCAsftuq6Dlwf7pvCf8ydgYhA=dependencies:ethereumjs-abi "git+https://github.com/ethereumjs/ethereumjs-abi.git"ethereumjs-util "^5.1.1"

修改后

eth-sig-util@^1.4.2:version "1.4.2"resolved "https://registry.yarnpkg.com/eth-sig-util/-/eth-sig-util-1.4.2.tgz#8d958202c7edbaae839707fba6f09ff327606210"integrity sha1-jZWCAsftuq6Dlwf7pvCf8ydgYhA=dependencies:ethereumjs-abi "0.6.8"ethereumjs-util "^5.1.1"

2. 将.env环境中配置修改为自己的配置

PRIVATE_KEY=
GOERLI_RPC_URL=
ETHERSCAN_API_KEY=
COINMARKETCAP_API_KEY=

3. 部署合约

执行yarn hardhat deploy部署合约可看到本地部署成功

4. 代码特别注意事项

  • 文件deploy/00-deploy-mocks.js只有是本地网络才会进行部署
  • 文件deploy/99-deploy-storage-fun.js示例了storage部署,img中有具体变量存储细节
  • FundMe.sol中有cheaperWithdraw与Withdraw两个函数,注意其区别
  • test部分较之前比较全面,建议执行遍测试加深理解
  • 其他细节自行学习研究,如有更多注意事项欢迎留言

欢迎关注公众号算法小生或沈健的技术博客shenjian.online

10.区块链系列之hardhat部署抵押赎回Fund合约相关推荐

  1. IPFS + 区块链 系列】 入门篇 - IPFS + Ethereum (中篇)-js-ipfs-api - 图片上传到IPFS以及下载

    目录 1. 项目效果图 2. 创建React项目 3. 完成UI逻辑 4. 安装ipfs-api 5. App.js导入IPFS 6. 实现上传图片到IPFS的Promise函数 7. 上传图片到IP ...

  2. IPFS + 区块链 系列】 入门篇 - IPFS + Ethereum (上篇)-js-ipfs-api

    目录 1. 内容简介 2. IPFS-HTTP效果图 3. 实现步骤 3.1 安装create-react-app 3.2 React项目创建 3.3 运行React项目 3.4 浏览项目 3.5 安 ...

  3. 【IPFS + 区块链 系列】 入门篇 - IPFS + Ethereum (下篇)-ipfs + Ethereum 大图片存储

    目录 1. 系列文章 2. 项目描述及效果展示 3. 阅读本文需要掌握的知识 4. 源码 5. 运行程序 6. 技术交流 1. 系列文章 [IPFS + 区块链 系列] 入门篇 - IPFS环境配置 ...

  4. 万字解析——区块链hyperledger fabric2.2部署实战教程

    导航 一.前言 二.hyperledger fabric介绍 三.测试网络示例 3.1 搭建开发环境 3.2 安装示例.二进制和 Docker 镜像 3.3 使用Fabric测试网络 3.4 使用认证 ...

  5. 区块链系列4-智能合约

    区块链与智能合约 实际上是区块链的程序,多方同意按照智能合约的代码执行,并对资产进行处置和分配. 复制代码 区块链的状态信息 账户状态账号,用户信息,当前余额 交易:改变了状态 交易(顺序不能乱)-& ...

  6. 区块链技术最佳的监管方式是智能合约监管智能合约

    区块链最新消息 1.在国内首部<区块链安全生存指南>发布 最新消息:比特大.长亭科技和ConsenSys陆联手发布了全国首部<区块链安全生存指南>.该指南围绕区块链技术安全,对 ...

  7. 10本区块链热门图书(应用开发、智能合约等)免费送!

    欢迎访问网易云社区,了解更多网易技术产品运营经验. "互联网之后就是区块链时代,区块链是实现未来跟踪经济的关键技术."世界上真的存在 100% 去中心化的系统吗?区块链到底是什么? ...

  8. ipfs搭建mysql_【IPFS + 区块链 系列】 入门篇 - IPFS环境配置

    孔壹学院:国内区块链职业教育引领品牌. 作者:黎跃春,孔壹学院创始人,区块链.高可用架构师 微信:liyc1215 区块链博客:http://liyuechun.org 目录 1. IPFS简介 IP ...

  9. 【IPFS + 区块链 系列】 入门篇 - IPFS+IPNS+个人博客搭建

    目录 1. 如何在IPFS新增一个文件 1.1 新建file.txt文件 1.2 查看ipfs相关命令 1.3 将file.txt添加到ipfs节点 2. 通过ipfs创建目录存储文件 3. 如何在I ...

最新文章

  1. 基于Python的卷积神经网络和特征提取
  2. python发送邮件带附件_在python中如何发送带有附件的邮件?
  3. 【UML】如何看Android的UML图
  4. Opengl :公转与自转
  5. 验证手机号码归属地_手机号码归属地能否取消? 工信部回复了
  6. shiro学习(18):使用注解实现权限认证和后台管理三
  7. 简单暴力到dp的优化(初级篇)
  8. android谷歌补丁日期,久违的Android更新补丁:多年前的坑,谷歌终于给填上了
  9. Div+CSS布局入门教程(三) 页面顶部制作之一
  10. 一篇文章看懂Java并发和线程安全
  11. 【网络流24题】星际转移问题(最大流)(网络判定)
  12. gd库多点画图 php_用 PHP 实现身份证号码识别
  13. Crystal Reports - New Report
  14. Mac 环境endnote 各种问题解决方法和word各种技巧汇总
  15. ubuntu 安裝deb_ubuntu安装deb
  16. https://mp.csdn.net/
  17. Bipolar Junction Transistor特性曲线
  18. Android方法耗时监控工具
  19. SAR成像系列:【7】合成孔径雷达(SAR)成像算法-后向投影(Back Projecting)算法(附Matlab代码)
  20. Flutter控件——常用控件:按钮

热门文章

  1. C# 代码反编译、代码混淆与加壳工具
  2. 逆向分析系列——加壳工具
  3. 剪辑的楼天城的ACM之路
  4. 微软ipv6服务器,【Azure】微软Azure开启原生IPv6支持
  5. 关于线索二叉树的详解
  6. 重新开张,谢天谢地。
  7. 快速傅里叶变换(FFT)板子
  8. 双评价技术指南2020_“双评价”技术指南(11月份版)解读
  9. java 中 ajax 的学习
  10. JVM中对象进入老年代的3种情况