使用 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 并将其集成到开发环境中,便可以轻松地与合约交互并提升整体开发人员体验。

相关推荐
遇到困难睡大觉哈哈8 小时前
Harmony os 静态卡片(ArkTS + FormLink)详细介绍
前端·microsoft·harmonyos·鸿蒙
用户47949283569158 小时前
Bun 卖身 Anthropic!尤雨溪神吐槽:OpenAI 你需要工具链吗?
前端·openai·bun
p***43488 小时前
前端在移动端中的网络请求优化
前端
g***B7388 小时前
前端在移动端中的Ionic
前端
拿破轮9 小时前
使用通义灵码解决复杂正则表达式替换字符串的问题.
java·服务器·前端
whltaoin9 小时前
【 Web认证 】Cookie、Session 与 JWT Token:Web 认证机制的原理、实现与对比
前端·web·jwt·cookie·session·认证机制
Aerelin9 小时前
爬虫playwright入门讲解
前端·javascript·html·playwright
5***o50010 小时前
前端在移动端中的NativeBase
前端
灵魂学者10 小时前
Vue3.x —— 父子通信
前端·javascript·vue.js·github
1***Q78410 小时前
前端跨域解决方案
前端