Rainbow logo
RainbowKit
2.2.4

Senarai Dompet Tersuai

Senarai Dompet Tersuai

Menyesuaikan senarai dompet

Anda boleh mengimport dompet individu dari '@rainbow-me/rainbowkit/wallets' bersama-sama dengan fungsi connectorsForWallets untuk membina senarai dompet anda sendiri dengan penyambung yang diperlukan. Dengan cara ini, anda mempunyai kawalan penuh ke atas dompet yang hendak dipaparkan, dan dalam susunan mana.

Sebagai contoh, anda boleh memilih untuk hanya menunjukkan Rainbow bersama-sama dengan dompet gantian generik.

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',
}
);

Anda kemudian boleh menyerahkan penyambung anda kepada createConfig Wagmi.

import { connectorsForWallets } from '@rainbow-me/rainbowkit';
import { createConfig } from 'wagmi';
const connectors = connectorsForWallets(/* ... */);
const config = createConfig({
connectors,
{/* Wagmi config */}
});
const queryClient = new QueryClient();
const App = () => (
<WagmiProvider config={config}>
<QueryClientProvider client={queryClient}>
<RainbowKitProvider {...etc}>
{/* Your App */}
</RainbowKitProvider>
</QueryClientProvider>
</WagmiProvider>
);

Dompet berikut disediakan melalui objek wallet.

Dompet berikut dipetakan kepada kaedah sambungan generik dan bukannya aplikasi khusus. Oleh itu, adalah disyorkan supaya dompet-dompet ini sentiasa dimasukkan.

Ini adalah pilihan dompet gantian yang direka untuk dompet berdasarkan WalletConnect yang belum disediakan oleh dompet lain dalam senarai.

Adalah disyorkan agar anda sentiasa memasukkan dompet ini dalam senarai untuk memastikan semua dompet berdasarkan WalletConnect disokong.

import { walletConnectWallet } from '@rainbow-me/rainbowkit/wallets';

Ini adalah pilihan dompet gantian yang direka untuk senario di mana window.ethereum wujud tetapi belum disediakan oleh dompet lain dalam senarai. Dompet ini akan menyembunyikan dirinya secara automatik dari senarai apabila gantian tidak diperlukan atau jika tiada dompet yang dimasukkan tersedia.

Disyorkan supaya anda sentiasa memasukkan dompet ini dalam senarai untuk memastikan semua dompet yang disuntik disokong.

import { injectedWallet } from '@rainbow-me/rainbowkit/wallets';

Untuk dApps yang menyokong Aplikasi Safe untuk membolehkan pengguna dengan mudah berhubung dengan peti simpanan Safe mereka atau multi-sig, sertakan pilihan safeWallet untuk sambungan automatik. Pilihan Safe hanya akan muncul dalam persekitaran pelayar Safe Wallet.

import { safeWallet } from '@rainbow-me/rainbowkit/wallets';

Dompet berikut disediakan melalui objek wallet (mengikut urutan abjad).

import { oneInchWallet } from '@rainbow-me/rainbowkit/wallets';
import { argentWallet } 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';

Penyambung dompet ini menyokong kedua-dua aplikasi dan lanjutan Wallet Coinbase, serta Smart Wallet Coinbase di Web.

Argumen preference tersedia untuk mengawal sama ada Smart Wallet diaktifkan dan tersedia untuk pengguna. Tingkah laku berdasarkan keutamaan didokumenkan di sini.

Smart Wallet akan diaktifkan secara lalai dengan all pada awal bulan Jun, tanpa peningkatan selanjutnya.

Pembangun boleh menguji Smart Wallet dengan rantaian sepolia dan baseSepolia hari ini dengan menetapkan smartWalletOnly dan memasukkan coinbaseWallet dalam senarai dompet mereka seperti ini:

import { coinbaseWallet } from '@rainbow-me/rainbowkit/wallets';
// Enable Coinbase Smart Wallet for testing
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 { zerionWallet } from '@rainbow-me/rainbowkit/wallets';
import { wigwamWallet } from '@rainbow-me/rainbowkit/wallets';

Berikut adalah beberapa contoh bagaimana menampilkan pelbagai dompet dalam susunan yang berbeza.

Tunjukkan MetaMask bersama-sama dengan dompet fallback umum.

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' },
);

Tunjukkan Rainbow, MetaMask dan Coinbase bersama-sama dengan dompet fallback umum.

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' },
);

Peringatan: Urutan array wallets menentukan urutan di mana dompet akan dipaparkan dalam UI.

Anda boleh menggunakan kekunci groupName untuk menamakan kumpulan dompet yang berbeza. Ini berguna jika anda ingin berkomunikasi dengan pengguna anda mengenai dompet yang anda syorkan, serta dompet lain yang mungkin.

Syorkan Rainbow dan MetaMask, tetapi juga tawarkan Coinbase serta dompet fallback umum.

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' },
);