Metamask
如何處理 MetaMask 與 dapp 斷開連接?
您如何檢測 MetaMask 使用者何時將他們的錢包與您的 dapp 斷開連接?我看到有一個
disconnect event
,但這是與 RPC 斷開連接的一個 - 我想知道使用者何時明確斷開了他們的錢包。
使用
accountschanged
事件。ethereum.on('accountsChanged', handler: (accounts: Array<string>) => void);
驗證是否有任何帳戶。
例如:accounts 變數返回一個數組,如果數組上有任何帳戶,您的 dapp 已連接。
使用下面的程式碼:
const accounts = await ethereum.request({ method: "eth_accounts" }); const isConnected = !!accounts.length;