随笔分类 -  typescript

摘要:在使用Gnosis Safe等多签钱包进行智能合约交互时,我们经常会遇到交易失败但无法获得明确错误信息的情况。通过设置适当的gas参数,我们可以改变这一行为模式,跳过某些预检验证,直接获取交易哈希。本文将深入探讨这一机制。 问题背景 在Safe多签钱包中执行交易时,通常会经过以下流程: 预估gas费 阅读全文
posted @ 2025-05-15 15:58 若-飞 阅读(81) 评论(0) 推荐(0)
摘要:在智能合约开发过程中,我们经常需要测试合约之间的交互。有时候,我们需要模拟某个合约地址的行为,特别是当我们只想测试特定合约的功能,而不是完整部署所有相关合约时。Hardhat提供了强大的工具支持这种测试方法,这就是"账户模拟"(Account Impersonation)技术。 什么是账户模拟? 账 阅读全文
posted @ 2025-04-24 11:23 若-飞 阅读(101) 评论(0) 推荐(0)
摘要:在JavaScript/TypeScript模块系统中,有两种主要的导出方式:命名导出(Named Export)和默认导出(Default Export)。每种方式都有其特定的使用场景和语法规则。 命名导出(Named Export) 命名导出允许你从一个模块中导出多个变量、函数或类,每个都有其特 阅读全文
posted @ 2025-04-10 10:07 若-飞 阅读(183) 评论(0) 推荐(0)
摘要:用hardhat部署safe合约的时候出现chainid不对的错误,主要原因是这样, 这个是错误的获取chainid的方法 chainId = (await ethers.provider.getNetwork()).chainId; 正确的获取chainid的方法: // 使用 BSC provi 阅读全文
posted @ 2025-02-27 13:50 若-飞 阅读(53) 评论(0) 推荐(0)
摘要:基本用法 // 方式1: ethers.getContractAt const safe = await ethers.getContractAt("Safe", safeAddress); // 方式2: Factory.connect const safe = Safe__factory.con 阅读全文
posted @ 2025-02-26 17:46 若-飞 阅读(35) 评论(0) 推荐(0)
摘要:在现代的 JavaScript 和 Node.js 项目中,package.json 文件是项目配置的核心,它包含了项目的依赖项、脚本和其他重要信息。在依赖管理中,dependencies 和 devDependencies 是两个关键的字段。了解它们的区别和用途对开发和部署过程至关重要。 什么是 阅读全文
posted @ 2025-02-25 09:21 若-飞 阅读(561) 评论(0) 推荐(0)