gpt4 book ai didi

javascript - 如何使用 web3modal 获取已连接钱包的地址?

转载 作者:行者123 更新时间:2023-12-05 00:39:09 26 4
gpt4 key购买 nike

我正在使用 next.js 和 web3 构建一个应用程序。要将用户钱包连接到前端,我使用 web3modal 如下:

const Home: NextPage = () => {
const [signer, setSigner] = useState<JsonRpcSigner | null>(null)

async function connect() {
const web3Modal = new Web3Modal()
const connection = await web3Modal.connect()
const provider = new ethers.providers.Web3Provider(connection)
const signer = provider.getSigner()

setSigner(signer)
}

return (
<div className="flex justify-center">
<button onClick={() => connect()}>Connect wallet</button>
{ signer && (
<h3>wallet connected: {signer._address}</h3>
)}
</div>
)
}
用户可以成功连接钱包,可惜 signer._address始终为空。我想向用户显示刚刚连接的地址,我该如何解决这个问题?

最佳答案

这不是关于 web3Modal 的问题,而是关于 ethers 的问题。
你可以得到这样的地址:

const [address, setAddress] = useState()
// ...
setAddress(await signer.getAddress())
文档在这里: https://docs.ethers.io/v5/api/signer/#Signer-getaddress

关于javascript - 如何使用 web3modal 获取已连接钱包的地址?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70192737/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com