用途:Viem 是 TypeScript 的以太坊接口库,提供低层无状态原语,用于读写链上状态、发送交易和调用合约。主要能力包括:自动类型安全与推断;可摇树轻量的模块;优化的编码与解析;可组合 API。核心概念有客户端(PublicClient、WalletClient、TestClient)、传输层(http、webSocket、自定义)、动作(getBlockNumber、sendTransaction 等)与链配置。常用工具:parseEther/formatEther、parseUnits/formatUnits 做单位换算;parseAbi/parseAbiItem 解析人类可读 ABI;getAddress/isAddress/isAddressEqual 处理地址。用法:用 createPublicClient 搭配 http 传输读取区块与余额;用 createWalletClient 搭配 privateKeyToAccount 或浏览器注入钱包执行签名与发送交易;通过 .extend(publicActions) 组合能力;用 readContract 读合约、writeContract 写合约,并可先用 simulateContract 模拟。账户支持本地私钥/助记词账户和 JSON-RPC 浏览器钱包账户。链可选用内置配置(mainnet、sepolia、arbitrum、optimism、polygon、base 等)或通过 defineChain 自定义。限制:资料未提供收费、价格、官方平台或效果数据;完整文档需通过 context7 MCP(库 ID /wevm/viem)按主题查询,如 clients、actions、accounts、contract、abi、chains。
web3-viem
编程与开发
更新于 10-16 08:41