- javascript/
- 如何在Javascript代码中捕获Metamask浏览器扩展中的锁定/解锁事件?
如何在Javascript代码中捕获Metamask浏览器扩展中的锁定/解锁事件?
如何在Javascript代码中捕获Metamask浏览器扩展中的锁定/解锁事件?,javascript,web3,metamask,Javascript,Web3,Metamask,我正在使用window.ethereum连接到Reactjs应用程序中的Metamask 9.3.0扩展。
Metamask似乎不会通过扩展在锁定/解锁时引发事件。下面是一些场景
我从浏览器代码连接到Metamask
浏览器代码现在可以访问帐户和余额
我点击分机上的“锁定”按钮;我从分机注销。扩展没有引发任何事件来指示元掩码已被锁定。(尝试了所有事件-断开连接、关闭(我知道它已弃用)和消息)
浏览器仍然显示帐号,因为它不知道Metamask已锁定。我们要么显示“连接到元掩码”按钮,要么显示帐号。
我正在使用window.ethereum连接到Reactjs应用程序中的Metamask 9.3.0扩展。
Metamask似乎不会通过扩展在锁定/解锁时引发事件。下面是一些场景
我从浏览器代码连接到Metamask
浏览器代码现在可以访问帐户和余额
我点击分机上的“锁定”按钮;我从分机注销。扩展没有引发任何事件来指示元掩码已被锁定。(尝试了所有事件-断开连接、关闭(我知道它已弃用)和消息)
浏览器仍然显示帐号,因为它不知道Metamask已锁定。我们要么显示“连接到元掩码”按钮,要么显示帐号。由于帐号显示在UI上,“连接到元掩码”按钮被隐藏。要访问“连接到元掩码”按钮,用户必须刷新页面。这不是一种良好的用户体验
相关问题
我锁定元掩码扩展
我导航到我的本地主机,浏览器代码检查Metamask是否已解锁并尝试获取帐户。由于Metamask已锁定,因此不会发生任何事情
现在,我通过单击扩展来登录metamask;如果登录成功,metamask将显示帐户等。扩展不会引发任何事件来指示metamask已解锁。(尝试了所有事件-断开连接、关闭(我知道它已弃用)和消息)。我现在必须单击“连接到metamask”“在站点上单击按钮,从Metamask获取帐户等,这不利于用户体验
我不确定是否还有其他事件-查看了Metamask文档,但似乎没有其他事件。Web3确实处理了这些情况,但window.ethereum似乎无法处理,或者我可能遗漏了什么
有解决办法吗