浅谈NODE的NPM命令和合约测试开发工具HARDHAT

2024-09-07 07:28

本文主要是介绍浅谈NODE的NPM命令和合约测试开发工具HARDHAT,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

$ npm install yarn -g  # 将模块yarn全局安装

$ npm install moduleName # 安装模块到项目目录下 默认跟加参数 --save 一样 会在package文件的dependencies节点写入依赖。
 
$ npm install -g moduleName # -g 的意思是将模块安装到全局,具体安装到磁盘哪个位置,要看 npm root -g 的位置。
 
$ npm install --save moduleName # --save 的意思是将模块安装到项目目录下,并在package文件的dependencies节点写入依赖。跟不写--save参数一样 等同npm install moduleName.
 
$ npm install --save-dev moduleName # --save-dev 的意思是将模块安装到项目目录下,并在package文件的devDependencies节点写入依赖。

$ npm install || npm install --production(补充)
假如我们第一拉下别人代码的时候,通常都是不上传node_module,所以我们每次使用前都是使用npm install一下,此时就会下载dependencies和devDependencies中的模块,
而如果我们使用npm install –production或者注明NODE_ENV变量值为production时,只会下载dependencies中的模块。

如果安装了Npm install 不理想想重新安装,还原本目录下npm库,你可以使用以下步骤:
删除现有的 node_modules 文件夹和 package-lock.json 或 yarn.lock 文件
清除 npm 缓存: npm cache clean --force
重新安装依赖: npm install

如果要使用国内镜像源,可以尝试使用淘宝的 npm 镜像源,通过运行 npm config set registry http://registry.npmmirror.com 来设置
还原默认镜像:npm config delete registry
查看当前镜像:npm config get registry
npm 官方原始镜像网址是:https://registry.npmjs.org/
淘宝 NPM 镜像:http://registry.npmmirror.com
阿里云 NPM 镜像:https://npm.aliyun.com
腾讯云 NPM 镜像:https://mirrors.cloud.tencent.com/npm/
华为云 NPM 镜像:https://mirrors.huaweicloud.com/repository/npm/
网易 NPM 镜像:https://mirrors.163.com/npm/
中国科学技术大学开源镜像站:http://mirrors.ustc.edu.cn/
清华大学开源镜像站:https://mirrors.tuna.tsinghua.edu.cn/
腾讯,华为,阿里的镜像站基本上比较全

检查代理设置:如果你使用了代理服务器,确保 npm 正确配置了代理,假设代理为http://127.0.0.1:7890:
设置代理 npm config set proxy http://127.0.0.1:7890
               npm config set https-proxy http://127.0.0.1:7890

删除代理 命令:npm config delete proxy
                         npm config delete https-proxy

获取本机公网IP 地址命令: curl myip.ipip.net 或 curl ipinfo.io

搭建hardhat环境:

1.新建一个空文件夹,打开命令行,初始化Node.js项目
npm init -y
2.使用npm下载并安装hardhat 环境引入依赖
npm install --save-dev hardhat
3.初始化项目
创建hardhat项目
建立空目录并在目录下  npx hardhat init 建立初始项目
如果出错 
清除 npm 缓存:运行 npm cache clean --force 清除缓存。

如果要再新建项目,不用再初始化安装,因为太耗费时间,直接拷贝即可,操作如下:
1.新建目录 进入目录 npx hatdhat init 初始化跳过最后一步不安装模块
2.直接复制 现有已经初始化安装的文件 node_modules 文件夹和package.json和 package-lock.json 文件到新目录。
3.npx hatdhat node 调试成功说明安装完成

npx hardhat compile:编译Solidity合约代码。
npx hardhat test:运行测试脚本。
npx hardhat run [path/to/script.js]:运行一个脚本。
npx hardhat clean:清除构建输出和缓存文件。
npx hardhat accounts:列出可用的账户信息。

终端进入控制台命令 npx hardhat console --network localhost 

检查gas使用:npx hardhat gas-reporter

npx hardhat node:启动本地开发节点/启动一个单独的链,内置链的名称是hardhat,默认chainid 31337. Node模式下,--network参数并不起作用

npx hardhat node --mining 启动挖矿模式

npx hardhat node --fork https://goerli.infura.io/v3/<key> 通过命令行单独启动一条fork链

npx hardhat run .\scripts\deploy.js --network localhost 指定网络运行脚本部署合约
当你在没有指定 network 参数的情况下使用 npx hardhat run 命令时,Hardhat会尝试在你的 hardhat.config.js 文件中找到一个默认的网络配置[defaultnetwork]。如果你没有设置默认网络,它会报错。
脚本运行时可以使用一个叫localhost的网络,但它不需要配置!Hardhat另一个特殊网络名称是localhost,它并不是内置链,而是预定义的,是内部配置好的一个remote链,指向http://localhost:8545

Hardhat是一个以太坊的开发和测试环境,它本身并不涉及数据存储。在Hardhat环境中,当你关闭节点时,所有的状态和数据都会被清除,因为Hardhat的设计初衷是为了提供一个快速、轻量级的开发测试环境,而不是一个长期的数据存储解决方案。因此,关闭Hardhat节点后,所有的数据和状态都会丢失,不会在节点关闭后继续储存数据。


 

这篇关于浅谈NODE的NPM命令和合约测试开发工具HARDHAT的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1144444

相关文章

Linux之计划任务和调度命令at/cron详解

《Linux之计划任务和调度命令at/cron详解》:本文主要介绍Linux之计划任务和调度命令at/cron的使用,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录linux计划任务和调度命令at/cron一、计划任务二、命令{at}介绍三、命令语法及功能 :at

Node.js 数据库 CRUD 项目示例详解(完美解决方案)

《Node.js数据库CRUD项目示例详解(完美解决方案)》:本文主要介绍Node.js数据库CRUD项目示例详解(完美解决方案),本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考... 目录项目结构1. 初始化项目2. 配置数据库连接 (config/db.js)3. 创建模型 (models/

使用Node.js制作图片上传服务的详细教程

《使用Node.js制作图片上传服务的详细教程》在现代Web应用开发中,图片上传是一项常见且重要的功能,借助Node.js强大的生态系统,我们可以轻松搭建高效的图片上传服务,本文将深入探讨如何使用No... 目录准备工作搭建 Express 服务器配置 multer 进行图片上传处理图片上传请求完整代码示例

Linux ls命令操作详解

《Linuxls命令操作详解》通过ls命令,我们可以查看指定目录下的文件和子目录,并结合不同的选项获取详细的文件信息,如权限、大小、修改时间等,:本文主要介绍Linuxls命令详解,需要的朋友可... 目录1. 命令简介2. 命令的基本语法和用法2.1 语法格式2.2 使用示例2.2.1 列出当前目录下的文

Spring Boot项目部署命令java -jar的各种参数及作用详解

《SpringBoot项目部署命令java-jar的各种参数及作用详解》:本文主要介绍SpringBoot项目部署命令java-jar的各种参数及作用的相关资料,包括设置内存大小、垃圾回收... 目录前言一、基础命令结构二、常见的 Java 命令参数1. 设置内存大小2. 配置垃圾回收器3. 配置线程栈大小

浅谈配置MMCV环境,解决报错,版本不匹配问题

《浅谈配置MMCV环境,解决报错,版本不匹配问题》:本文主要介绍浅谈配置MMCV环境,解决报错,版本不匹配问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录配置MMCV环境,解决报错,版本不匹配错误示例正确示例总结配置MMCV环境,解决报错,版本不匹配在col

浅谈mysql的sql_mode可能会限制你的查询

《浅谈mysql的sql_mode可能会限制你的查询》本文主要介绍了浅谈mysql的sql_mode可能会限制你的查询,这个问题主要说明的是,我们写的sql查询语句违背了聚合函数groupby的规则... 目录场景:问题描述原因分析:解决方案:第一种:修改后,只有当前生效,若是mysql服务重启,就会失效;

nvm如何切换与管理node版本

《nvm如何切换与管理node版本》:本文主要介绍nvm如何切换与管理node版本问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录nvm切换与管理node版本nvm安装nvm常用命令总结nvm切换与管理node版本nvm适用于多项目同时开发,然后项目适配no

Linux find 命令完全指南及核心用法

《Linuxfind命令完全指南及核心用法》find是Linux系统最强大的文件搜索工具,支持嵌套遍历、条件筛选、执行动作,下面给大家介绍Linuxfind命令完全指南,感兴趣的朋友一起看看吧... 目录一、基础搜索模式1. 按文件名搜索(精确/模糊匹配)2. 排除指定目录/文件二、根据文件类型筛选三、时间

使用mvn deploy命令上传jar包的实现

《使用mvndeploy命令上传jar包的实现》本文介绍了使用mvndeploy:deploy-file命令将本地仓库中的JAR包重新发布到Maven私服,文中通过示例代码介绍的非常详细,对大家的学... 目录一、背景二、环境三、配置nexus上传账号四、执行deploy命令上传包1. 首先需要把本地仓中要