浅谈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节点后,所有的数据和状态都会丢失,不会在节点关闭后继续储存数据。

相关推荐
徐子颐9 分钟前
从 Vibe Coding 到 Agent Coding:Cursor 2.0 开启下一代 AI 开发范式
前端
小月鸭21 分钟前
如何理解HTML语义化
前端·html
jump68044 分钟前
url输入到网页展示会发生什么?
前端
诸葛韩信1 小时前
我们需要了解的Web Workers
前端
brzhang1 小时前
我觉得可以试试 TOON —— 一个为 LLM 而生的极致压缩数据格式
前端·后端·架构
yivifu1 小时前
JavaScript Selection API详解
java·前端·javascript
这儿有一堆花1 小时前
告别 Class 组件:拥抱 React Hooks 带来的函数式新范式
前端·javascript·react.js
十二春秋1 小时前
场景模拟:基础路由配置
前端
六月的可乐2 小时前
实战干货-Vue实现AI聊天助手全流程解析
前端·vue.js·ai编程
Q_Q5110082852 小时前
python+django/flask的莱元元电商数据分析系统_电商销量预测
spring boot·python·django·flask·node.js·php