Я хочу получить выбранную учетную запись в моем плагине метамаски через web3.js. И я хочу сделать это динамически, поэтому при переключении на другую учетную запись она должна быть напечатана в пользовательском интерфейсе.
Я импортирую библиотеку (beta.37) через:
<script src="https://cdn.jsdelivr.net/gh/ethereum/web3.js@1.0.0-beta.37/dist/web3.min.js"></script>"
Чтобы сделать вещи более сложными:
1) В Brave web3.eth.accounts[0]
будет регистрировать мой текущий адрес на любом другом сайте, кроме моего dApp, но здесь он возвращает «неопределенное».
2) в Chrome (та же сборка) он всегда возвращает undefined.
Для меня необъяснимо, как он может вернуть undefined
, когда другие dApps, созданные на web3.js 0.x, используют тот же самый код.
Следовательно, я не могу использовать следующую функцию для динамической печати текущего адреса:
var accountInterval = setInterval(function() {
if (web3.eth.accounts[0] !== userAccount) {
userAccount = web3.eth.accounts[0];
}
}, 100);