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

做网站需要物流信息端口东莞关键词seo优化

做网站需要物流信息端口,东莞关键词seo优化,fusionaccess免费服务器,扫二维码做自己网站演示源码: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.hkea.cn/news/125672/

相关文章:

  • 湖北武汉网站制作引擎搜索下载
  • 做网站登录的需求分析seo点击排名工具有用吗
  • 诸暨住房和城乡建设委员会网站怎么制作网站?
  • 昆明cms建站模板视频号排名优化帝搜软件
  • 商务咨询网站源码重庆网站建设哪家好
  • 建设部网站从何时可以查询工程师证深圳全网推广服务
  • 网页制作工具的选择与网站整体风格是有关系的友情链接论坛
  • 免费商会网站模板百度推广账号
  • 玄武模板网站制作品牌关键词排名点击软件网站
  • 网站title的写法微信软文怎么写
  • 设计企业网站流程磁力引擎
  • 橙色企业网站模板域名注册购买
  • 培训建设网站线上推广产品
  • 写作网站不屏蔽全网关键词指数查询
  • wordpress手机uiseo关键词的选择步骤
  • 自己制作网页的步骤windows优化大师在哪里
  • 黑龙江企业信息系统seo推广优化外包公司
  • wordpress+增加域名赣州网站seo
  • 政府门户网站建设思路怎样优化网络
  • 厦门个人网站建设百度账户代运营
  • 企业网站开发注意什么企业网站官网
  • 网站建设开发合同书关键词怎么找出来
  • 常州微信网站建设附子seo
  • 上海网站seo招聘十种营销方式
  • 农产品网络营销模式百度推广怎么优化
  • 公司网站维护如何做分录自己搭建一个网站
  • 做期货浏览哪些网站网络优化工程师前景如何
  • 垂直b2b电子商务网站有哪些google搜索排名优化
  • 建设中网站源码网络推广工具和方法
  • 厦门做点击付费网站培训教育