我想在关闭浏览器窗口时保持元任务连接。因此,当我将dapp连接到元任务,关闭窗口,然后再次打开dapp时,我不需要再次连接它。我使用web3-react实现了类似的东西,但我面临着第三个web-dev/react的问题。
我通过检查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)
}, [])