![](/img/trans.png)
[英]Call specific solidity function from deployed smart contract within react through javascript (web3.js)
[英]Unable to call function from smart contract using web3.js
我正在嘗試使用 web3 從我的智能合約中調用 function 並做出反應。 這是我的代碼。
app.js
const project=new web3.eth.Contract(Mycontractabi.abi,networkData.address);
const retailer=await project.getretailer.call();
console.log(retailer);
contract:
address public retailer
function getretailer() public view returns (address)
{
return retailer;
}
請指出問題所在,因為我無法獲得代碼所需的零售商地址
我發現使用 web3.js 從智能合約訪問變量有一個簡單的方法:
contract.methods.variable_name.call().call();
所以在我的例子中,修改后的代碼將是:
const project=new web3.eth.Contract(Mycontractabi.abi,networkData.address);
const retailer=await project.methods.retailer.call().call();
無需調用任何 function 即可訪問單個變量。 我們可以使用上述方法直接訪問任何變量。
您可以像下面這樣撥打 function。
const retailer = await project.methods.retailer().call();
如果一個方法有一些參數,你可以使用:
const response = await project.methods.myAnotherMethod(param1, param2).send({from: address});
address
是當前連接的錢包地址。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.