【发布时间】:2022-10-25 02:29:35
【问题描述】:
我想在关闭浏览器窗口时保持元掩码连接。所以当我将我的 dapp 连接到 metamask 时,关闭窗口,然后再次打开 dapp,我不需要再次连接它。我使用 web3-react 实现了类似的东西,但我遇到了 thirdweb-dev/react 的问题。
【问题讨论】:
-
请提供足够的代码,以便其他人可以更好地理解或重现该问题。
标签: reactjs metamask web3-react thirdweb
我想在关闭浏览器窗口时保持元掩码连接。所以当我将我的 dapp 连接到 metamask 时,关闭窗口,然后再次打开 dapp,我不需要再次连接它。我使用 web3-react 实现了类似的东西,但我遇到了 thirdweb-dev/react 的问题。
【问题讨论】:
标签: reactjs metamask web3-react thirdweb
我通过检查 MetaMask 帐户长度解决了这个问题,它返回一个帐户数组。
const handleWalletConnect = async () => {
try {
const accounts = await window.ethereum.request({ method: 'eth_requestAccounts' })
setWallet(accounts[0])
} catch (e) {
console.error(e)
}
}
useEffect(() => {
window.setTimeout(() => {
if (window.ethereum._state.accounts.length > 0) handleWalletConnect()
}, 1000)
}, [])
【讨论】: