wagmi 2.X(四)

281 阅读1分钟

之前说了创建实例和交易,这块还有一个问题。

有时候我们需要过滤一些合约事件,使用viem创建的实例这个时候就有点力不从心了:

这个是1.x的文档,从1.x版本开始创建的合约实例就是viem的实例而不是之前的ethers实例

之间的主要区别:
ethers.js:

  1. 更加面向对象,使用链式调用和事件监听的方式。
  2. 更加成熟,功能全面,适合需要复杂交互的应用。

viem:

  1. 更加函数式,强调使用客户端和合约实例的组合。
  2. 设计简洁,适合快速开发和轻量级应用。

我们使用ethers.js创建的合约实例通常会包括:filter、queryFilter用于过滤事件的方法

viem创建的实例则没有对应的方法,如果在用到filter的时候viem实例会显得异常的繁琐很不友好,这个时候我们则可以借助于ethers.js创建实例不必强行依赖于viem。