SuperAPI AI 工具集

viem

编程与开发

查看项目

更新于 10-15 23:43

技能介绍

用途:viem 是面向以太坊及 EVM 兼容链的 TypeScript 接口库,提供端到端类型安全、抽象开销小、模块可 tree-shake 的区块链交互底层原语,也是 wagmi 的默认客户端库。

主要能力:提供 PublicClient(读链上状态、调用 view 函数、监听事件)、WalletClient(签名与发送交易、部署合约)、TestClient(Anvil/Hardhat 节点控制)三类客户端;用 http()、webSocket()、custom()、fallback() 等 transport 连接 RPC;内置 50+ 链定义并支持 defineChain 自定义链;支持 readContract、multicall、simulateContract、writeContract、watchEvent、getLogs,以及 ABI 编解码、地址工具、哈希和 parseEther/formatUnits 等数值转换。

用法:npm install viem。需显式传入 chain 与 transport 创建客户端;地址类型为 0x${string},可用 getAddress() 规范化;ABI 数组需加 as const 才有类型推断;建议先 simulateContract 再 writeContract;无 Provider/Signer 概念,wei 值使用原生 bigint(不要用 BigNumber)。

适用场景:DApp 前端、脚本与后端服务中读写链上数据、调用/部署合约、批量读取和事件监听。

限制:资料未提供定价、性能基准或平台支持等细节。