ant-design-web3
ant-design-web3 copied to clipboard
[Bug] 在某些特殊情况下,针对 wagmi 的 provider 连接的状态不准确
What happens?
目前我们的连接状态是通过是否有 address 来判断,但是在钱包锁定的情况下,address 依旧是可以取到的,但是和 connector 相关的 操作都会导致失败。
How To Reproduce
Steps to reproduce the behavior: 1. 2.
Expected behavior 1. 2.
- 正常连接钱包
- 新起一个新的 tab,关闭之前的 tab
- 在新的 tab 页锁定钱包,这一步是为了模拟长时间不操作钱包,钱包自动锁定的机制
- 之后打开之前连接钱包的页面,此时会发现依旧是连接的状态,但是 disconnect 会失败
Context
- Ant Design Web3 Version:
- Node Version:
- Platform:
继续观察了一下,如果是采用的网络魔法的话,是可以在非常短的时间内断开 但是如果没有魔法的话,就会有较长的等待断开时间。发现是连接 relay.walletconnect.com 这个 websocket 超时
我之前也感觉断开连接经常会有点不太灵敏,这个确实要排查一下,这个细节对体验还是蛮重要的
继续观察了一下,发现 metamask 出现问题的概率比较大。尝试用了其他的 connect kit 也会有类似的问题
排查原因。
官网的 ETH 连接钱包 demo,在连接钱包之后,刷新页面,并没有显示已经连接上钱包了。但是实际上还是连着的。 其他项目里面的连接状态是正常的,可能是官网的特殊环境导致的