Rainbow logo
RainbowKit
2.2.10

Özel BağlanDüğmesi

Özel BağlanDüğmesi

Özel bir BağlanDüğmesi oluşturma

Kendi özel bağlantı düğmenizi oluşturmak için düşük seviyeli ConnectButton.Custom kullanabilirsiniz. Bu bileşen, yerleşik düğmeleri yeniden uygulamanız için gereken her şeyi içeren bir fonksiyon sunar.

Yerleşik düğmelerin minimal bir yeniden uygulaması şöyle görünebilir:

import { ConnectButton } from '@rainbow-me/rainbowkit';
export const YourApp = () => {
return (
<ConnectButton.Custom>
{({
account,
chain,
openAccountModal,
openChainModal,
openConnectModal,
authenticationStatus,
mounted,
}) => {
// Note: If your app doesn't use authentication, you
// can remove all 'authenticationStatus' checks
const ready = mounted && authenticationStatus !== 'loading';
const connected =
ready &&
account &&
chain &&
(!authenticationStatus ||
authenticationStatus === 'authenticated');
return (
<div {...(!ready && { 'aria-hidden': true, 'style': { opacity: 0, pointerEvents: 'none', userSelect: 'none', }, })} >
{(() => {
if (!connected) {
return (
<button onClick={openConnectModal} type="button">
Connect Wallet
</button>
);
}
if (chain.unsupported) {
return (
<button onClick={openChainModal} type="button">
Wrong network
</button>
);
}
return (
<div style={{ display: 'flex', gap: 12 }}>
<button onClick={openChainModal} style={{ display: 'flex', alignItems: 'center' }} type="button" >
{chain.hasIcon && (
<div style={{ background: chain.iconBackground, width: 12, height: 12, borderRadius: 999, overflow: 'hidden', marginRight: 4, }} >
{chain.iconUrl && (
<img alt={chain.name ?? 'Chain icon'} src={chain.iconUrl} style={{ width: 12, height: 12 }} />
)}
</div>
)}
{chain.name}
</button>
<button onClick={openAccountModal} type="button">
{account.displayName}
{account.displayBalance
? ` (${account.displayBalance})`
: ''}
</button>
</div>
);
})()}
</div>
);
}}
</ConnectButton.Custom>
);
};

Aşağıdaki props, render fonksiyonunuza iletilir.

PropTypeDefault
hesapobject | tanımsız
hesap.adresstring
hesap.bakiyeOndalikstring | tanımsız
hesap.bakiyeFormatlistring | tanımsız
hesap.bakiyeSembolstring | tanımsız
hesap.gorunenBakiyestring | tanımsız
hesap.gorunenAdstring
hesap.ensAvatarstring | tanımsız
hesap.ensAdıstring | tanımsız
hesap.bekleyenIslemlerboolean
PropTypeDefault
zincirobject | tanımsız
zincir.simgeVarmiboolean
zincir.simgeUrlstring | tanımsız
zincir.simgeArkaPlanstring | tanımsız
zincir.idnumber
zincir.adıstring | tanımsız
zincir.desteklenmeyenboolean | tanımsız
PropTypeDefault
hesapModaliAc() => void
zincirModaliAc() => void
bağlanModaliAc() => void
hesapModaliAcikboolean
zincirModaliAcikboolean
bağlanModaliAcikboolean
PropTypeDefault
monteEdildiboolean
kimlikDogrulamaDurumu"yükleniyor" | "kimlik doğrulanmadı" | "kimliği doğrulandı" | tanımsız