Remix

是否可以使用 Remix Solidity IDE 與已部署的合約(不是我的)進行互動?

  • August 7, 2021

我知道我可以呼叫方法或使用web3.js. 但是,是否可以使用 Remix Solidity IDE 與已部署的合約(不是我的合約)進行互動,例如 golem、status 等?

鏈下互動(web3js)

是的,您需要從已部署的合約中獲取 ABI。流行的合約通常會在 Etherscan 等網站上發布其程式碼。例如,在這裡您可以找到部署0xa74476443119A942dE498590Fe1f2454d7D4aC0d.

然後,您可以創建一個contract對象實例,web3js用於與給定地址處的已部署程式碼進行互動:

var MyContract = web3.eth.contract(FETCHED_ABI);

// instantiate by address
var contractInstance = MyContract.at(DEPLOYED_ADDRESS);

在這裡,您可以閱讀有關與合約互動的更多資訊。

鏈上互動(混音)

在你的合約中可以內聯介面與你想使用的 Golem 合約的方法:

contract GolemToken {
 function totalSupply() external constant returns (uint256){}
}

然後,您只需將地址轉換為該合約並呼叫方法:

GolemToken token = GolemToken(ADDRESS);
uint supply = token.totalSuppy();

我希望它有幫助!

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