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

相关推荐
晴殇i7 分钟前
《效率翻倍!12个被90%前端忽视的CSS神技》
前端·css·面试
NiKo_W10 分钟前
Linux 重定向与Cookie
linux·运维·服务器·前端·网络·线程·协议
Mr_汪19 分钟前
离线工程集成其他推送
前端
惜茶27 分钟前
使用前端框架vue做一个小游戏
前端·vue.js·前端框架
普通码农42 分钟前
Vue 3 接入谷歌登录 (小白版)
前端·vue.js
Ric9701 小时前
Object.fromEntries 实操
前端
用户4099322502121 小时前
Vue3响应式系统中,对象新增属性、数组改索引、原始值代理的问题如何解决?
前端·ai编程·trae
阿明Drift1 小时前
使用 CSS `perspective` 实现 3D 卡片效果
前端·css
若安程序开发1 小时前
web京东商城前端项目4页面
前端
申阳1 小时前
Day 8:06. 基于Nuxt开发博客项目-我的服务模块开发
前端·后端·程序员