Rainbow logo
RainbowKit
2.2.10

Впровадження кнопки Rainbow у вашому dApp

Компонент RainbowButton - найпростіший спосіб додати підтримку гаманця Rainbow до dApp, які використовують wagmi та віддають перевагу більш кастомізованому досвіду підключення ніж RainbowKit.

1. Встановіть @rainbow-me/rainbow-button та його залежності

Пакунок сумісний з Next.js, React і Vite. Уважно дотримуйтесь попереджень про залежності.

npm install @rainbow-me/rainbow-button wagmi [email protected] @tanstack/react-query

2. Налаштуйте з Wagmi та встановіть RainbowButton

Передайте екземпляр rainbowConnector до Wagmi createConfig з projectId та appName, та обгорніть ваш додаток у RainbowButtonProvider. Потім додайте компонент RainbowButton.

import '@rainbow-me/rainbow-button/styles.css';
import { RainbowButtonProvider, RainbowButton, rainbowConnector, } from '@rainbow-me/rainbow-button';
import { WagmiProvider, createConfig, http } from 'wagmi';
import { mainnet } from 'viem/chains';
import { QueryClientProvider, QueryClient, } from "@tanstack/react-query";
const config = createConfig({
connectors: [
rainbowConnector({
appName: 'RainbowKit demo',
projectId: 'YOUR_PROJECT_ID',
}),
],
chains: [mainnet],
transports: {
[mainnet.id]: http(),
},
ssr: true,
});
const queryClient = new QueryClient();
function MyApp({ Component, pageProps }: AppProps) {
return (
<WagmiProvider config={config}>
<QueryClientProvider client={queryClient}>
<RainbowButtonProvider>
<RainbowButton />
</RainbowButtonProvider>
</QueryClientProvider>
</WagmiProvider>
);
}

Ви також можете використовувати компонент RainbowButton.Custom для налаштування власних реалізацій та стилізації.

<RainbowButton.Custom>
{({ ready, connect }) => {
return (
<button type="button" disabled={!ready} onClick={connect} >
Connect Rainbow
</button>
);
}}
</RainbowButton.Custom>

3. І ось, що ви отримали!

Тепер ваші користувачі можуть насолоджуватися безперебійним досвідом підключення до Rainbow — без будь-якого обслуговування чи головного болю.

Компонент WalletButton також доступний у RainbowKit, якщо ви бажаєте додати підтримку додаткових гаманців.