自定義錢包列表
自定義錢包列表
自定義錢包列表
您可以從 '@rainbow-me/rainbowkit/wallets'
並且使用 connectorsForWallets
函數來匯入單個錢包,並建置您自己的錢包列表及必要的連接器。 這樣您可以完全控制顯示哪些錢包以及其顯示順序。
例如,您可以選擇只顯示 Rainbow 和通用回退錢包。
import { connectorsForWallets } from '@rainbow-me/rainbowkit';
import {
rainbowWallet,
walletConnectWallet,
} from '@rainbow-me/rainbowkit/wallets';
const connectors = connectorsForWallets(
[
{
groupName: 'Recommended',
wallets: [rainbowWallet, walletConnectWallet],
},
],
{
appName: 'My RainbowKit App',
projectId: 'YOUR_PROJECT_ID',
}
);
然後,您可以將連接器傳遞給 Wagmi 的 createConfig
。
import { connectorsForWallets } from '@rainbow-me/rainbowkit';
import { createConfig } from 'wagmi';
const connectors = connectorsForWallets();
const config = createConfig({
connectors,
{}
});
const queryClient = new QueryClient();
const App = () => (
<WagmiProvider config={config}>
<QueryClientProvider client={queryClient}>
<RainbowKitProvider {...etc}>
{}
</RainbowKitProvider>
</QueryClientProvider>
</WagmiProvider>
);
以下錢包可通過 wallet
物件提供。
以下錢包適用於通用連接方法而非特定應用。 因此,建議務必包含這些錢包。
這是一個回退錢包選項,專為尚未被列表中其他錢包提供的 WalletConnect 錢包設計。
建議您始終將此錢包包含在列表中,以確保所有基於 WalletConnect 的錢包都受到支援。
import { walletConnectWallet } from '@rainbow-me/rainbowkit/wallets';
這是一個回退錢包選項,專為存在 window.ethereum
但尚未被列表中其他錢包提供的情況而設計。 當不需要回退或無法使用嵌入式錢包時,該錢包將自動從列表中隱藏。
建議您始終將此錢包包含在列表中,以確保所有嵌入式錢包都受到支援。
import { injectedWallet } from '@rainbow-me/rainbowkit/wallets';
對於支援 Safe Apps 的 dApp,以便讓用戶輕鬆連接其 Safe vault 或多簽帳戶,請包含 safeWallet
選項以自動連接。 Safe 選項僅在 Safe Wallet 瀏覽器環境中顯示。
import { safeWallet } from '@rainbow-me/rainbowkit/wallets';
以下錢包按照字母順序由 wallet
物件提供。
import { oneInchWallet } from '@rainbow-me/rainbowkit/wallets';
import { argentWallet } from '@rainbow-me/rainbowkit/wallets';
import { backpackWallet } from '@rainbow-me/rainbowkit/wallets';
import { berasigWallet } from '@rainbow-me/rainbowkit/wallets';
import { bestWallet } from '@rainbow-me/rainbowkit/wallets';
import { binanceWallet } from '@rainbow-me/rainbowkit/wallets';
import { bitgetWallet } from '@rainbow-me/rainbowkit/wallets';
import { bifrostWallet } from '@rainbow-me/rainbowkit/wallets';
import { bitskiWallet } from '@rainbow-me/rainbowkit/wallets';
import { bitverseWallet } from '@rainbow-me/rainbowkit/wallets';
import { bloomWallet } from '@rainbow-me/rainbowkit/wallets';
import { braveWallet } from '@rainbow-me/rainbowkit/wallets';
import { bybitWallet } from '@rainbow-me/rainbowkit/wallets';
此錢包連接器支援 Coinbase Wallet 應用程式和擴充功能,以及 Web 上的 Coinbase Smart Wallet。
可以使用 preference
參數控制是否為用戶啟用和提供 Smart Wallet。 Preference
參數可用於控制 Smart Wallet 是否為用戶啟用和可用。 基於偏好的行為在此處有記錄。
在六月初 Smart Wallet 將在 all
設定下預設啟用,無需進一步升級。
開發者今天可以通過 sepolia
和 baseSepolia
鏈測試 Smart Wallet,設定 smartWalletOnly
並在其錢包列表中包含 coinbaseWallet
,如下所示:
import { coinbaseWallet } from '@rainbow-me/rainbowkit/wallets';
coinbaseWallet.preference = 'smartWalletOnly';
import { coin98Wallet } from '@rainbow-me/rainbowkit/wallets';
import { compassWallet } from '@rainbow-me/rainbowkit/compassWallet';
import { coreWallet } from '@rainbow-me/rainbowkit/wallets';
import { dawnWallet } from '@rainbow-me/rainbowkit/wallets';
import { enkryptWallet } from '@rainbow-me/rainbowkit/wallets';
import { foxWallet } from '@rainbow-me/rainbowkit/wallets';
import { frameWallet } from '@rainbow-me/rainbowkit/wallets';
import { frontierWallet } from '@rainbow-me/rainbowkit/wallets';
import { gateWallet } from '@rainbow-me/rainbowkit/wallets';
import { imTokenWallet } from '@rainbow-me/rainbowkit/wallets';
import { iopayWallet } from '@rainbow-me/rainbowkit/wallets';
import { kaiaWallet } from '@rainbow-me/rainbowkit/wallets';
import { kaikasWallet } from '@rainbow-me/rainbowkit/wallets';
import { krakenWallet } from '@rainbow-me/rainbowkit/wallets';
import { kresusWallet } from '@rainbow-me/rainbowkit/wallets';
import { ledgerWallet } from '@rainbow-me/rainbowkit/wallets';
import { magicEdenWallet } from '@rainbow-me/rainbowkit/wallets';
import { mewWallet } from '@rainbow-me/rainbowkit/wallets';
import { metaMaskWallet } from '@rainbow-me/rainbowkit/wallets';
import { okxWallet } from '@rainbow-me/rainbowkit/wallets';
import { omniWallet } from '@rainbow-me/rainbowkit/wallets';
import { oneKeyWallet } from '@rainbow-me/rainbowkit/wallets';
import { paraSwapWallet } from '@rainbow-me/rainbowkit/wallets';
import { phantomWallet } from '@rainbow-me/rainbowkit/wallets';
import { rabbyWallet } from '@rainbow-me/rainbowkit/wallets';
import { rainbowWallet } from '@rainbow-me/rainbowkit/wallets';
import { ramperWallet } from '@rainbow-me/rainbowkit/wallets';
import { roninWallet } from '@rainbow-me/rainbowkit/wallets';
import { safeheronWallet } from '@rainbow-me/rainbowkit/wallets';
import { tahoWallet } from '@rainbow-me/rainbowkit/wallets';
import { talismanWallet } from '@rainbow-me/rainbowkit/wallets';
import { tokenaryWallet } from '@rainbow-me/rainbowkit/wallets';
import { tokenPocketWallet } from '@rainbow-me/rainbowkit/wallets';
import { trustWallet } from '@rainbow-me/rainbowkit/wallets';
import { uniswapWallet } from '@rainbow-me/rainbowkit/wallets';
import { valoraWallet } from '@rainbow-me/rainbowkit/wallets';
import { xdefiWallet } from '@rainbow-me/rainbowkit/wallets';
import { xPortalWallet } from '@rainbow-me/rainbowkit/wallets';
import { zerionWallet } from '@rainbow-me/rainbowkit/wallets';
import { zilPayWallet } from '@rainbow-me/rainbowkit/wallets';
import { wigwamWallet } from '@rainbow-me/rainbowkit/wallets';
以下是不同錢包的顯示範例,順序各不相同。
顯示 MetaMask 和通用回退錢包。
import { connectorsForWallets } from '@rainbow-me/rainbowkit';
import {
metaMaskWallet,
walletConnectWallet,
} from '@rainbow-me/rainbowkit/wallets';
const connectors = connectorsForWallets(
[
{
groupName: 'Recommended',
wallets: [metaMaskWallet, walletConnectWallet],
},
],
{ appName: 'RainbowKit App', projectId: 'YOUR_PROJECT_ID' },
);
顯示 Rainbow、MetaMask 和 Coinbase 同通用回退錢包。
import { connectorsForWallets } from '@rainbow-me/rainbowkit';
import {
rainbowWallet,
metaMaskWallet,
coinbaseWallet,
walletConnectWallet,
} from '@rainbow-me/rainbowkit/wallets';
const connectors = connectorsForWallets(
[
{
groupName: 'Suggested',
wallets: [
rainbowWallet,
metaMaskWallet,
coinbaseWallet,
walletConnectWallet,
],
},
],
{ appName: 'RainbowKit App', projectId: 'YOUR_PROJECT_ID' },
);
提醒:wallets
陣列的順序定義了錢包在 UI 中顯示的順序。
您可以使用 groupName
鍵來為不同的錢包組命名。 這在您希望向用戶傳達推薦的錢包以及其他可能的錢包時非常有用。
推薦 Rainbow 和 MetaMask,但同時提供 Coinbase 和通用回退錢包。
import { connectorsForWallets } from '@rainbow-me/rainbowkit';
import {
rainbowWallet,
metaMaskWallet,
coinbaseWallet,
walletConnectWallet,
} from '@rainbow-me/rainbowkit/wallets';
const connectors = connectorsForWallets(
[
{
groupName: 'Recommended',
wallets: [rainbowWallet, metaMaskWallet],
},
{
groupName: 'Others',
wallets: [coinbaseWallet, walletConnectWallet],
},
],
{ appName: 'RainbowKit App', projectId: 'YOUR_PROJECT_ID' },
);