Cover photo

WAGMI系列 - 连接钱包

WAGMI默认提供了Metamask、Coinbase Wallet、Ledger、Safe Wallet和WalletConnect等钱包的Connector. 当我们的DAPP想支持这些钱包时,一般只需要进行如下配置:

const client = createClient({
  autoConnect: true,
  connectors: [
    new MetaMaskConnector({ chains }),
    new CoinbaseWalletConnector({
      chains,
      options: {
        appName: 'wagmi',
      },
    }),
  ],
  provider,
  webSocketProvider,
})

如果想连接OKX和BitKeep等插件钱包,可以使用Injected connector进行配置:

const client = createClient({
  autoConnect: true,
  connectors: [
    new MetaMaskConnector({ chains }),
    new InjectedConnector({
      chains,
      options: {
        name: 'BitKeep',
        shimDisconnect: true,
        getProvider: () => {
            const provider = window.bitkeep && window.bitkeep.ethereum
            if (!provider) {
              console.error('bitkeep doesn't exist')
            }
            return provider
        },
      },
    }),
    new InjectedConnector({
      chains,
      options: {
        name: 'OKX Wallet',
        shimDisconnect: true,
        getProvider: () => {
            const provider = window.okxwallet
            if (!provider) {
              console.error('okx wallet doesn't exist')
            }
            return provider
        }
      },
    }),
  ],
  provider,
  webSocketProvider,
})