Danh sách Ví Tùy chỉnh
Danh sách Ví Tùy chỉnh
Tùy chỉnh danh sách ví
Bạn có thể nhập khẩu các ví cá nhân từ '@rainbow-me/rainbowkit/wallets'
cùng với hàm connectorsForWallets
để xây dựng danh sách ví của riêng bạn với các kết nối cần thiết của chúng. Bằng cách này, bạn có toàn quyền kiểm soát về các ví nào được hiển thị, và theo thứ tự nào.
Ví dụ, bạn có thể chỉ chọn hiển thị Rainbow cùng với các ví dự phòng chung.
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',
}
);
Sau đó, bạn có thể chuyển các kết nối của mình cho hàm createConfig
của Wagmi.
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>
);
Các ví sau đây được cung cấp thông qua đối tượng wallet
.
Các ví sau đây được phân phạm vi cho các phương pháp kết nối chung hơn là các ứng dụng cụ thể. Do đó, nên bao gồm luôn các ví này.
Đây là một tùy chọn ví dự phòng được thiết kế cho các ví dựa trên WalletConnect mà chưa được cung cấp bởi một ví khác trong danh sách.
Khuyến nghị rằng bạn luôn bao gồm ví này trong danh sách để đảm bảo tất cả các ví dựa trên WalletConnect đều được hỗ trợ.
import { walletConnectWallet } from '@rainbow-me/rainbowkit/wallets';
Đây là một tùy chọn ví dự phòng được thiết kế cho các kịch bản mà window.ethereum
tồn tại nhưng chưa được cung cấp bởi một ví khác trong danh sách. Ví này sẽ tự động ẩn khỏi danh sách khi không cần thiết sử dụng dự phòng hoặc không có ví được tiêm sẵn có.
Khuyến nghị rằng bạn luôn bao gồm ví này trong danh sách để đảm bảo tất cả các ví được tiêm đều được hỗ trợ.
import { injectedWallet } from '@rainbow-me/rainbowkit/wallets';
Đối với các dApps hỗ trợ các Ứng dụng An toàn để cho phép người dùng dễ dàng kết nối với kho an toàn hoặc multi-sig của mình, bao gồm tùy chọn safeWallet
để kết nối tự động. Tùy chọn An toàn sẽ chỉ xuất hiện trong môi trường trình duyệt của Ví An toàn.
import { safeWallet } from '@rainbow-me/rainbowkit/wallets';
Các ví sau đây được cung cấp qua đối tượng wallet
(theo thứ tự chữ cái).
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';
Trình kết nối ví này hỗ trợ cả ứng dụng và phần mở rộng Wallet Coinbase, cũng như Coinbase Smart Wallet trên Web.
Một đối số preference
có sẵn để kiểm soát xem Smart Wallet có được kích hoạt và có sẵn cho người dùng hay không. Hành vi dựa trên sở thích được tài liệu hóa tại đây.
Smart Wallet sẽ được kích hoạt mặc định với all
vào đầu tháng Sáu mà không cần nâng cấp thêm.
Các nhà phát triển có thể thử nghiệm Smart Wallet với các chuỗi sepolia
và baseSepolia
ngay hôm nay bằng cách cài đặt smartWalletOnly
và bao gồm coinbaseWallet
trong danh sách ví của họ như sau:
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 { zerionWallet } from '@rainbow-me/rainbowkit/wallets';
import { wigwamWallet } from '@rainbow-me/rainbowkit/wallets';
Đây là một vài ví dụ về cách hiển thị các ví khác nhau, theo các thứ tự khác nhau.
Hiển thị Rainbow, MetaMask và Coinbase cùng với các ví dự phòng chung.
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' },
);
Hiển thị Rainbow, MetaMask và Coinbase cùng với các ví dự phòng chung.
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' },
);
Lưu ý: Thứ tự của mảng wallets
xác định thứ tự mà các ví sẽ được hiển thị trong giao diện người dùng.
Bạn có thể sử dụng khóa groupName
để đặt tên cho các nhóm ví khác nhau. Điều này hữu ích nếu bạn muốn thông báo cho người dùng của mình biết những ví nào bạn đề xuất, cũng như các ví khác có thể sử dụng.
Đề xuất Rainbow và MetaMask, nhưng cũng cung cấp Coinbase cùng với các ví dự phòng chung.
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' },
);