Web3事件监听器。检查metamask登录

时间:2018-04-22 18:47:13

标签: events addeventlistener ethereum web3 metamask

所以我有这个默认的元掩码事件监听器,它检查用户是否已连接。我添加了一个额外的功能(第4行),它将在容器中显示钱包地址。但是,如果我在未检测到元掩码时尝试使用不同的消息附加容器,则会获得一个空容器。我错过了什么?

window.addEventListener('load', function() {
if (typeof web3 !== 'undefined') {
    web3js = new Web3(web3.currentProvider);
    $('#eth-address').append(web3.eth.accounts[0]) // display address
} else {
    console.log('No web3? You should consider trying MetaMask!')
    web3js = new Web3(new Web3.providers.HttpProvider("http://localhost:8545"));
    $('#eth-address').append('please connect using metamask')}
startApp() })    

1 个答案:

答案 0 :(得分:1)

这是安装元掩码的情况吗?所以有提供商,但帐户被锁定了?

定义了web3,但随后帐户对象为空,可能会执行console.log来检查发生了什么。

如果帐户被锁定,那么你可以做一件事,设置一个间隔来继续检查帐户。