Rainbow logo
RainbowKit
2.2.5

迁移到 WalletConnect v2

在5分钟或更短时间内为 v2 升级准备您的 dApp

WalletConnect v1 协议将在 2023年6月28日关闭,而 RainbowKit 能帮助您简单地进行转换。

现在,RainbowKit 对 WalletConnect v2 的支持已成为标准,不会产生破坏性更改。 只需升级并参考下面的指南以获取更多详细信息。 只需升级并参考下面的指南以获取更多详细信息。

WalletConnect 是允许用户将他们的移动钱包连接到您的 dApp 的协议,这是 RainbowKit 的重要基础。 WalletConnect v2 的最近发布带来了一些重要的升级,使钱包-dApp 的体验变得更好。 WalletConnect v2 的最近发布带来了一些重要的升级,使钱包-dApp 的体验变得更好。

在v2中,您的用户现在可以同时连接到多个链,因此您可以忘记关于切换链的握手操作。 它还扩大了对更多网络的支持,并带来了使以太坊登录更快的改进。 它还扩大了对更多网络的支持,并带来了使以太坊登录更快的改进。

如果您已经按照 RainbowKit 0.12.x1.0.x 的迁移指导操作,那么您几乎就成功了! 只需升级到最新的补丁发布并试一试。 只需升级到最新的补丁发布并试一试。

RainbowKit 默认启用了 0.12.151.0.2 的 WalletConnect v2。 我们将继续支持 0.12.x,以防您的dApp尚未升级到wagmi v1和RainbowKit v1。 我们将继续支持 0.12.x,以防您的dApp尚未升级到wagmi v1和RainbowKit v1。

1. 升级依赖项

npm i @rainbow-me/rainbowkit@^1.0.2 wagmi@^1.2

如果您在使用 0.12.x1.0.x 之前的RainbowKit版本,只需遵循迁移指南进行更新。

建议0.12.x的dApps开始升级到wagmi v1,因为WalletConnect v2的稳定性改进将只包含在wagmi的未来版本中。

2. 提供一个 projectId

现在依赖于WalletConnect的每一个dApp都需要从WalletConnect Cloud获取一个projectId。 这完全免费,只需要几分钟。 这完全免费,只需要几分钟。

把你的 projectId 提供给 getDefaultWallets 和单独的 RainbowKit 钱包连接器,如下所示:

const projectId = 'YOUR_PROJECT_ID';
const { wallets } = getDefaultWallets({
appName: 'My RainbowKit App',
projectId,
chains,
});
const connectors = connectorsForWallets([
...wallets,
{
groupName: 'Other',
wallets: [
argentWallet({ projectId, chains }),
trustWallet({ projectId, chains }),
ledgerWallet({ projectId, chains }),
],
},
]);

RainbowKit 是类型安全的,当 projectId 缺失时,它会警告你。 请参考我们的示例来查看 v2 的操作过程: 请参考我们的示例来查看 v2 的操作过程:

参考 docs 获取额外支持的选项。