Rainbow logo
RainbowKit
2.2.11

Ö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 –