Rainbow logo
RainbowKit
2.2.10

遷移到 WalletConnect v2

在 5 分鐘或更短的時間內為 v2 升級準備您的 dApp

WalletConnect v1 協議將於 2023 年 6 月 28 日關閉,RainbowKit 將使過渡變得非常簡單。

WalletConnect v2 的支援現已成為 RainbowKit 的標準功能,沒有重大變更。只需升級並參考下方的指南以了解更多詳情。

WalletConnect 是一項允許用戶將其移動裝置錢包連接到您的 dApp 的協議,這是 RainbowKit 的重要基礎。WalletConnect v2 的最新版本帶來了一些重要升級,使錢包-dApp 互動體驗更上一層樓。

有了 v2,用戶可以同時連接到多條區塊鍊,因此您可以忘記鍊切換握手。它還擴大了對更多網路的支援,並帶來了提高以太坊登錄速度的改進。

如果您已經遵循 RainbowKit 的遷移指南 0.12.x1.0.x,那麼您就快完成了!只需升級到最新的補丁版並試用一下。

RainbowKit 默認啟用 WalletConnect v2 (0.12.151.0.2),我們正在繼續支援 0.12.x 以防您的 dApp 尚未升級到 Wagmi v1 和 RainbowKit v1。

1. 升級依賴項目

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

如果您使用的是 RainbowKit 0.12.x1.0.x 之前的版本,只需遵循 遷移指南 以保持更新。

建議 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: [
readyWallet({ projectId, chains }),
trustWallet({ projectId, chains }),
ledgerWallet({ projectId, chains }),
],
},
]);

RainbowKit 是類型安全的,當缺少 projectId 時會提醒您。請參考我們的示例以查看 v2 的實作:

請參考 文件 以了解其他支援選項。