Metamask

如何處理 MetaMask 與 dapp 斷開連接?

  • April 24, 2022

您如何檢測 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;

引用自:https://ethereum.stackexchange.com/questions/118881