Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/427.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 我调用SmartContract令牌ERC20,为什么显示哈希输出?_Javascript_Blockchain_Ethereum_Solidity_Smartcontracts - Fatal编程技术网

Javascript 我调用SmartContract令牌ERC20,为什么显示哈希输出?

Javascript 我调用SmartContract令牌ERC20,为什么显示哈希输出?,javascript,blockchain,ethereum,solidity,smartcontracts,Javascript,Blockchain,Ethereum,Solidity,Smartcontracts,我不知道为什么会这样,即使在以前的版本(web3+Metamask)中可以发布真实数据。但现在用作散列(输出)。我在下面的代码和输出中举了一个例子(以获取ERC20令牌上的TotalSupply): 输出:0x18160ddd const contractInstance = web3.eth.contract(contractAbi).at(contractAddress); const total_supply = contractInstance.totalSupply.getData()

我不知道为什么会这样,即使在以前的版本(web3+Metamask)中可以发布真实数据。但现在用作散列(输出)。我在下面的代码和输出中举了一个例子(以获取ERC20令牌上的TotalSupply):

输出:0x18160ddd

const contractInstance = web3.eth.contract(contractAbi).at(contractAddress);
const total_supply = contractInstance.totalSupply.getData();
console.log(total_supply);
如何显示真实数据?从某种意义上说,它不是散列出来的。谢谢

.getData()
返回您必须发送到智能合约以调用该方法的ABI编码输入


如果您想实际调用智能合约,请使用
.call()

如何操作?这像是contractionInstance.totalSupply.call()吗?我没有成功(错误)确切的语法取决于您是否使用web3.js 0.2.x、web3.js 1.0.x、块菌合约实例等。根据您的其他代码,我猜测这是web3.js 0.2.x,因此它可能应该是
contractance.totalSupply()