问题标签 [hardhat]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
solidity - 如何使用安全帽在 Arbiscan 上验证合同
我在使用安全帽验证 Arbiscan 上的合同时遇到问题。当我在 Etherscan 上使用它时一切都很好,但在 Arbiscan 上,我在 Internet 上找不到任何解决方案。有人有什么想法吗?这是我的配置:
这是我面临的错误消息:
插件 @nomiclabs/hardhat-etherscan 中的错误:找不到此网络的 etherscan 端点。ChainID: 421611. 选择的网络是 arbitrum_rinkeby 可能的原因有:
- 所选网络 (arbitrum_rinkeby) 错误。
- 安全帽网络配置错误
python - 安装 eth-brownie 时出错。(带像素)
尝试使用以下错误安装pipx install brownie
后,我也尝试pipx install cytoolz
无济于事。fml。
帮助表示赞赏!
blockchain - 错误:预期的私钥是长度为 32 的 Uint8Array
遵循https://ethereum.org/vi/developers/tutorials/hello-world-smart-contract/的指南
尝试运行我的部署脚本时出现此错误。我完全不知道为什么这不起作用,因为我直接从指南中复制了每段代码。
我的 hardhat.config.js
我的 deploy.js
我的 .env
它编译得很好,但是当我使用命令时给了我错误
npx 安全帽运行脚本/deploy.js --network ropsten
terminal - 如何结束安全帽节点以释放关联的 PID?
例如,在我运行一个节点之后:
npx hardhat node
我想结束节点并释放端口,这样我就可以运行另一个节点,例如:
npx hardhat node --fork <mainnet_link>
目前,我执行 ctrl+z 并使用 lsof -i :8545 获取端口的 PID,然后执行 kill -9 PID 以释放端口,否则我会收到 EADDRINUSE 错误。
无论如何要从节点杀死端口而不是执行ctrl + z?
chainlink - 有时当我运行“npx hardhat compile”时,我会收到此错误:致命错误:NewNativeModule 分配失败 - 进程内存不足
有时当我npx hardhat compile
在我的 windows cli 上运行此命令时,我会收到以下错误:
一段时间后,错误就会消失。它可能在我重新启动系统或创建新的安全帽项目并在那里导入代码后消失。
但是这种情况经常发生,可能是什么原因?
我做了很多研究,一些答案表明这可能是 Node 和应用程序的内存分配的问题,但我不知道如何将解决方案应用于 Hardhat 项目。
这是一个可能的解决方案的链接:https ://medium.com/@vuongtran/how-to-solve-process-out-of-memory-in-node-js-5f0de8f8464c
操作系统:WINDOWS 10
CLI:WINDOWS CMD
blockchain - 在 Moralis 分叉测试网上运行 npx hardhat test --network local 或 npx hardhat test --network kovan 时出现未经授权的错误
我正在尝试学习如何使用 Moralis 配置安全帽,我编写了一个智能合约,现在我想测试它。我成功地分叉了一个 Moralis Kovan 网络和一个本地网络,我让它在我的计算机上运行。现在我想在 Moralis 的分叉 kovan 或本地网络上运行一些测试,但它们似乎都不起作用。
运行 npx hardhat test --network local 或 npx hardhat test --network kovan 时出现以下错误:HardhatError: HH110: Invalid JSON-RPC response received: {"error":"unauthorized"}
这是我的 hardhat.config.js
blockchain - 在 Etherscan Rinkeby 上验证/发布智能合约
我正在尝试使用 hardhat 和 hardhat-etherscan 验证并发布已部署到 rinkeby 网络的智能合约。当我运行验证脚本时,出现错误。
我运行以下命令
运行上面的脚本后,出现以下错误。
我们尝试在不包含任何不相关的合同的情况下验证您的合同 NFTCollectible,但它失败了。使用用于编译和部署它的完整 solc 输入再次尝试。这意味着不相关的合约可能会显示在 Etherscan...
在 0xDDeE39Ae632760906d273B450493405Dc3C455Fe 成功提交了合约合约/NFTCollectible.sol:NFTCollectible 的源代码,用于在 Etherscan 上进行验证。等待验证结果...
hardhat.config.js
我的智能合约包括几个来自 openzepplin 的导入。
}
blockchain - 使用没有脚本的 Hardhat 部署智能合约
从字面上看,无论我在哪里(其他 stackoverflow 帖子或官方文档),部署智能合约的方法总是使用脚本
npx hardhat run scripts/deploy.js --network ropsten
我正在寻找一种仅使用 npm 库“hardhat”而不在终端中实际运行“脚本”来部署它的方法。
有谁知道怎么做?
unit-testing - 为什么我的工件回来未定义?
我正在通过使用安全帽、solidity 和 chai 制作代币进行测试来学习一些区块链的东西。我正在从 OpenZeppelin 扩展 ERC20 协议。目前我正在尝试针对硬币编写一些基本代码,例如其名称、符号、初始金额。
我的测试文件中的工件返回未定义,我不确定为什么,因为它们在部署脚本中工作正常。这是测试文件和 hardhat.config.ts。
我的文件结构如下所示:
solidity - 错误:事务已恢复:函数调用未能执行
我目前在一个 nft 市场上工作,想在每次销售中收取 2.5% 的费用。我已经阅读并在线搜索了如何计算可靠性百分比并在这方面取得了成功,但问题是它的结果是一个巨大的数字,即 2.5 * 150/100 应该返回 3.75,但我得到了这个数字:3750000000000000000000000000000000000
我的测试
结果
所以我的问题是有没有办法把这个数字(3750000000000000000000000000000000000)变成一个小数或整数?我已经搜索过,但在网上找不到任何关于这个的东西