使用 TypeChain 从智能合约 ABI 生成类型声明

前言

web3 项目中,前端不可缺少地需要调用智能合约的代码,但是智能合约只有合约地址及对应的 ABI 文档,而没有相应的 typescript 类型声明。本文讲述如何使用 typechain 将智能合约的 ABI 文件自动生成类型声明,这样可以在项目中使用对应的属性和方法。

实现过程

1. 安装依赖

如标题所述,项目需要安装 typechain 库:

javascript 复制代码
yarn add typechain @typechain/ethers-v5 -D

2. 编写脚本

而后,需要在项目 package.json 文件中编写 scripts 脚本:

javascript 复制代码
"typechain": "typechain --out-dir src/types/contracts --target ethers-v5 'src/abis/*.json'",

脚本命令中,由 --out-dir 指定 src/types/contracts 为输入目录,而目标目录则为 src/abis/*.json 文件。

执行脚本

最后执行 yarn typechain 命令就行。

总结

通过采用 TypeChain 并将其集成到开发环境中,便可以轻松地与合约交互并提升整体开发人员体验。

相关推荐
岱宗夫up1 天前
FastAPI入门(上篇):快速构建高性能Python Web API
开发语言·前端·python·fastapi
devmoon1 天前
使用 Zombienet 运行平行链网络
web3·区块链·sdk·polkadot·测试网·跨链
紫陌涵光1 天前
112. 路径总和
java·前端·算法
mCell1 天前
Memo Code 安全设计:子进程、命令防护与权限审批的统一方案
安全·typescript·agent
漠月瑾-西安1 天前
CVE-2025-55182漏洞解析:你的React项目安全吗?
前端·安全·react.js
No丶slovenly1 天前
flutter笔记-输入框
前端·笔记·flutter
国产化创客1 天前
ESP32+Web实现智能气象站
前端·物联网·智能家居·智能硬件
coderYYY1 天前
VSCode终端启动报错
前端·ide·vscode·npm·编辑器
tod1131 天前
Redis 数据类型与 C++ 客户端实践指南(redis-plus-plus)
前端·c++·redis·bootstrap·html
Sylvia33.1 天前
火星数据:棒球数据API
java·前端·人工智能