【Solidity】「Nonce too high. Expected nonce to be 0 but got X…」の対処法

Solidityロゴ

Hardhatとメタマスクを使って、ローカル開発している際に遭遇するエラーの対処法を残しておきます。

「Nonce too high. Expected nonce to be 0 but got X…」の対処法

hardhat metamask Expected nonce to be 0 but got Xのコンソールエラー内容

結論、メタマスクの設定からアカウントのリセットを行えば、正常にトランザクションが実行されるようになります。

トマトソース

私はかなりこれの解決に時間をとってしまったので、同じエラーに遭遇した人の役に立てれば幸いです。

メタマスクのアカウントリセット方法

メタマスクのアカウントリセットは以下の方法でリセットできます。

アカウントリセット手順
  1. メタマスクのアイコンをクリック
  2. 右上のアカウントアイコンをクリック
  3. 「設定」をクリック
  4. 「高度な設定」をクリック
  5. 「アカウントをリセット」をクリック

英語の設定になっている方は、

「設定」→ 「Settings」
「高度な設定」→ 「Advanced」
「アカウントをリセット」→ 「Reset Account」

と読み替えて実行して下さい。

「hardhat metamask Expected nonce to be 0 but got X.」が起こる原因

「hardhat metamask Expected nonce to be 0 but got X.」のエラーが発生する原因はイマイチ不明です。

ただし、npx hardhat nodeとして、ローカルネットワークを再起動すると発生します。

トマトソース

私の場合、100%で発生します。

ノードを再起動するたびに、発生して鬱陶しいのでどうにかバグフィックスして欲しいものですね、、、(←自分でやれ)

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

コメント

コメントする