首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从MetaMask断开dapp

从MetaMask断开dapp
EN

Stack Overflow用户
提问于 2021-11-27 10:04:37
回答 1查看 1.7K关注 0票数 3

有各种各样的教程教授如何激活和停用Metamask钱包,或者一般情况下可能是任何密码钱包,但在所有这些教程中,我都有相同的问题,如下所示:

当我停用我的帐户时,仍然会在Metamask GUI中显示您已连接,问题是当您重新加载页面时,您将再次获得连接的行为,就好像您从未断开连接一样,您可以通过下面的代码示例亲自验证这一点:

使用UseDapp框架:

代码语言:javascript
复制
import React from 'react'
import { useEthers } from '@usedapp/core'

const TryUseDappExample = () => {

  const { activateBrowserWallet, deactivate, account } = useEthers()

  return (
    <div>
      {!account && <button onClick={activateBrowserWallet}> Connect </button>}
      {account && <button onClick={deactivate}> Disconnect </button>}
      {account && <p>Account: {account}</p>}
    </div>
  )
}

export default TryUseDappExample

请尝试点击connect ->断开->重新加载页面,您将看到您仍在连接。

使用Web3-Reaction教程提供了同样的场景,尽管当我重新加载页面时,它并不显示钱包是连接的,而是只显示在Metamask上。

我的问题是一个普遍的问题,你如何正确地断开元钱包与dapp?

谢谢!

您可以在提供的图像中看到行为,钱包通过断开按钮断开连接,但您仍然可以看到它在Metamask中的连接。

EN

回答 1

Stack Overflow用户

发布于 2022-01-31 18:01:06

我也面临过这个问题,但我发现dapp应用程序无法从Metamask内部断开连接(它没有特权)。

我们可以做的是从应用程序内部处理连接。示例:您将帐户和提供者存储在变量中,然后按下“断开”按钮,它就会从该变量中删除该信息。你认为我们是断开连接,但在现实中,我们不能断开与实际元。

但是,当有人真正断开他/她的帐户与Metamask,然后你可以监听accountChanged事件,以处理它在你的应用程序。

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70133769

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档