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

相关推荐
我是华为OD~HR~栗栗呀20 小时前
(华为od)21届-Python面经
java·前端·c++·python·华为od·华为·面试
币圈菜头21 小时前
GAEA Carbon-Silicon Symbiotism NFT 解析:它在系统中扮演的角色,以及与空投权重的关系
人工智能·web3·去中心化·区块链
Slow菜鸟21 小时前
微信小程序(TypeScript)开发指南
微信小程序·小程序·typescript
刘一说21 小时前
ES6+核心特性全面浅析
java·前端·es6
kirinlau21 小时前
Vue.observable实现vue原生轻量级状态管理详解
前端·javascript·vue.js
严文文-Chris21 小时前
RAG关键技术要点详解
java·服务器·前端
自然 醒21 小时前
elementUI的select下拉框如何下拉加载数据?
前端·javascript·elementui
我没想到原来他们都是一堆坏人21 小时前
常用npm源与nrm
前端·npm·node.js
编代码的小王21 小时前
【无标题】
前端·css
im_AMBER21 小时前
React 20 useState管理组件状态 | 解构 | 将事件处理函数作为 props 传递 | 状态提升
前端·javascript·笔记·学习·react.js·前端框架