- MetaMask は複数アカウント(アドレス)を管理できる
- web3 に MetaMask が inject しているとき、ユーザがアカウントを切り替えたことを検知したいことがある
- いろいろ方法しらべてみたけど、次のような原始的な方法を使う感じになりそう。
サンプルコード
var web3 = new Web3(web3.currentProvider);
var account = '';
var accountInterval = setInterval(function() {
if (web3.eth.accounts[0] !== account) {
// MetaMask のアカウント(アドレス)が切り替わった
account = web3.eth.accounts[0];
}
}, 300);
デモ
Note
- Ethereum 関連の情報は https://scrapbox.io/sushiether/ に集約することにしました。
- この記事の内容に変更・更新がある場合は、以下の URL を更新します。
- https://scrapbox.io/sushiether/MetaMask_のアカウント(アドレス)切り替えを検知