跳到正文
← 工具目录

viem

以 TypeScript ABI 类型推导和 Public Client 为核心的 Ethereum 开发库;适合核对单次与批量只读结果、逐项失败及模拟请求的身份和状态边界。

官方资料核验

访问官方入口 ↗

https://viem.sh/

适合做什么

  • 检查 readContract ABI与区块范围
  • 解读 multicall success/failure与字节批次
  • 核对 simulateContract sender/value/覆盖状态
  • 解析自定义错误并拆开结果与待执行请求
网络与生态
Ethereum
登录与钱包权限
文档公开,已有项目按自身 viem 锁定包版本/ABI使用。createPublicClient + Transport 做公开读取,不必建立钱包客户端;不传HTTP URL可回落公共RPC,生产文档推荐自有服务URL,认证/额度另查。固定官方main源码只说明该commit,不证明已安装release。
费用
readContract、multicall、simulateContract 是读取/模拟,不发送交易或产生链上执行Gas;RPC服务仍可收费/限流,批量有望减少请求/CU但没有账单节省保证。模拟里的value/fee字段不是已付款或实际交易费。

局限与核对事项

  • 只列已读Ethereum主网示例,非链配置全集、所有RPC兼容或实时部署保证;Multicall3历史部署和EIP1898支持需另核。
  • 当前网页部分类型/返回表与示例有冲突;按项目锁定版本与对应源码确定,不把固定main commit当npm当前release。
  • multicall默认允许逐项失败,失败result undefined不是0;batchSize以编码字节计,不是调用数。
  • stateOverride/override批准仅模拟状态;request是待执行参数,模拟成功既不是交易已发送,也不是以后一定执行成功。
  • 账户、ABI、块标签、缓存/CCIP查找和transport影响结果范围;地址型sender不证明持有私钥或已授权。

中文使用教程

官方资料与依据

纯文本版 · 反馈入口变更或资料错误