Web3js

是否可以在同一個 dApp 中擁有多個 Web3 對象實例?

  • July 12, 2021

我需要在同一個應用程序中通過兩個不同的提供者訪問兩個智能合約,是否可以Web3在同一個 dApp 中有兩個實例。像這樣的東西:

const web3 = new Web3();
const web4 = new Web3();
...
web3.setProvider(myHttpProvider);
web4.setProvider(myWSSProvider);

我實際上在我的 dApp 中有這段程式碼並且它正在工作,但問題是我只為第一個實例設置了我的帳戶憑據(通過HDWalletProvider),但第二個實例也使用相同的帳戶;所以我不確定幕後發生了什麼!

是的,在你的 dApp 中可以有多個 web3 實例,但只有在你想簽署交易或讀取多個鏈上的數據時才有意義。我看不出有什麼理由要包含多個指向同一鏈的提供者。

引用自:https://ethereum.stackexchange.com/questions/103315