当前位置: 首页 > news >正文

外贸型网站推广与监测巩义网络推广

外贸型网站推广与监测,巩义网络推广,代刷网站推广链接快手,动漫设计专业就业方向演示源码:hardhat-demo: 演示基于hardhat的HelloWord合约测试案例。 环境 NodeJs 创建工程 1.创建一个hardhat工程根目录(hardhat-demo),然后进入该目录执行。 npx hardhat执行该命令,会进行hardhat工程初始化。 提示我们是否安装该版本h…

演示源码:hardhat-demo: 演示基于hardhat的HelloWord合约测试案例。

环境

NodeJs

创建工程

1.创建一个hardhat工程根目录(hardhat-demo),然后进入该目录执行。

npx hardhat

执行该命令,会进行hardhat工程初始化。

提示我们是否安装该版本hardhat软件包。输入y,回车。

 

就是问我们需要哪种工程环境。我这里选择创建一个支持ts的。

提示我们输入工程根目录。直接回车就行。 

后面也是输入y,回车。

 2.创建完成,我们删除他默认的测试案例,形成如下结构。

contracts:放测试合约。

scripts:放部署脚本。

test:放测试脚本。

hardhat.config.ts:这是hardhat配置文件,修改合约编译版本、连接测试网络等信息,都在这个文件上。

使用

在./contracts 目录下面创建HelloWorld.sol

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;contract HelloWorld {string private hello;function getHello() public view returns (string memory) {return hello;}function setHello(string memory _hello) public {hello = _hello;}
}    

由于我们的测试合约版本,为0.8.0,修改hardhat.config.ts文件。

import { HardhatUserConfig } from "hardhat/config";
import "@nomicfoundation/hardhat-toolbox";const config: HardhatUserConfig = {solidity: "0.8.0",networks: {// hardhat内置测试网络连接localhost: {url: 'http://127.0.0.1:8545',},// ganache 网络连接配置信息ganache: {url: 'http://127.0.0.1:7545',accounts: ['0x172a483415c5e119f1ea336d44646572ac34a088e7bc2884f8e1f83da4cb304a']},},
};export default config;

部署

在./scripts创建deploy.ts

关于用法直接看注释。

import { ethers } from "hardhat"; // 从hardhat中导入ethers工具库/*** 主函数,用于部署HelloWorld智能合约*/
async function main() {// 获取当前区块链环境的签名者列表,[owner]表示获取第一个签名者,通常是部署合约的账户const [owner] = await ethers.getSigners();// 通过ethers获取HelloWorld合约的工厂,这一步是准备部署合约const HelloWorld = await ethers.getContractFactory("HelloWorld");// 连接到owner账户并部署HelloWorld合约const helloWorld = await HelloWorld.connect(owner).deploy();// 等待合约部署完成await helloWorld.deployed();// 打印合约部署地址console.log("HelloWorld deployed to:", helloWorld.address);
}// 执行主函数
main().then(() => process.exit(0)) // 主函数执行成功后,退出进程,返回码为0.catch((error) => {console.error(error); // 主函数执行失败后,打印错误信息process.exit(1); // 退出进程,返回码为1,表示有错误发生});

执行命令: npx hardhat run .\scripts\deploy.ts

测试

在 ./test创建HelloWorld.test.ts

关于用法直接看注释。

// 导入chai模块用于断言验证
import { expect } from "chai";
// 导入hardhat模块用于部署和管理合约
import { ethers } from "hardhat";// 描述HelloWorld合约的测试行为
describe("HelloWorld", function () {// 测试改变问候语后是否返回新的问候语it("Should return the new greeting once it's changed", async function () {// 获取HelloWorld合约的工厂const HelloWorld = await ethers.getContractFactory("HelloWorld");// 部署HelloWorld合约const helloWorld = await HelloWorld.deploy();// 等待合约部署完成await helloWorld.deployed();// 验证初始问候语是否为空expect(await helloWorld.getHello()).to.equal("");// 执行改变问候语的操作const setGreetingTx = await helloWorld.setHello("Hello, world!");// 等待交易确认await setGreetingTx.wait();// 验证新的问候语是否为"Hello, world!"expect(await helloWorld.getHello()).to.equal("Hello, world!");});
});

执行命令:npx hardhat test <指定脚本路径>

此方法会执行test目录下的全部脚本,要想执行特定脚本,后面跟脚本路径。

部署到其他网络

下面以合约部署到ganache来说明。

我们需要先启动ganache,指定端口为7545,接着将第一个账户私钥,粘贴到hardhat.config.ts的如下位置。

当一切准备齐全时,执行部署命令带上 --network ganache即可。

http://www.hengruixuexiao.com/news/23820.html

相关文章:

  • 网页前端开发工程师深圳关键词优化报价
  • 网站开发及企业推广seo 推广怎么做
  • 国内老牌的网站制作seo网页优化公司
  • 网站做成软件网店如何推广
  • 如何推广自己的外贸网站百度seo搜索引擎优化
  • 十种网络推广的方法爱站网seo培训
  • wordpress如何设置字体大小东莞seo外包平台
  • 做网站怎么给客户打电话济南做网站建设的公司
  • 服务器网站开发重庆小潘seo
  • c 网站建设设计报告网页模板网站
  • 淘宝做网站网站开发的步骤
  • 网站宽度全部列表支持安卓浏览器软件下载
  • 望江网站建设怎么买到精准客户的电话
  • 做网站大概价格搭建网站的软件
  • 单页面网站模板怎么做做小程序公司哪家好
  • 招标采购平台某网站seo诊断分析和优化方案
  • wordpress没人维护了重庆seo网站建设
  • 国产前端框架 做网站数据分析师就业前景
  • 做衣服网站的实验感想青岛百度推广优化怎么做的
  • 上传wordpress到服务器福州seo代理计费
  • 中国城乡和住房建设部网站首页seo关键词外包公司
  • 网站的建立过程创建网站
  • 做网站的重点目标网站诊断分析
  • 深圳seo整站优化承接抖音优化公司
  • 做网站用身份证徐州seo网站推广
  • 网上免费家装设计网站排名优化怎么做
  • 网站原型设计流程青岛网络推广公司排名
  • 中山网站制作策划流量平台有哪些
  • 佛山手机网站建设网站优化排名方案
  • 可以上传自己做的视频的网站吗百色seo关键词优化公司