let contract = await window.tronWeb.contract().at(config.contract);
let result = await contract.methods.depositTron()
.send({callValue:amount*1000000})
.then(output=>transaction = output);
console.log("result", result);我试图获得depositTron方法的结果,但返回了哈希值。我该怎么办?请帮帮我。
发布于 2022-02-05 09:28:19
事务调用的函数只返回EVM中的值(通常是从另一个契约调用时)。
从send() JS函数返回的哈希是事务哈希。
您可以通过在契约中发出事件日志来解决此问题。然后,您可以从事务收据(在挖掘事务之后在JS中发出)获取值或读取发出的日志。
稳固性:
contract MyContract {
event Deposit(uint256 indexed amount);
function depositTron() external payable {
emit Deposit(msg.value);
}
}联署材料:
contract.methods.depositTron().send({callValue:amount*1000000})
.on('receipt', (receipt) => {
console.log(receipt.logs);
})https://stackoverflow.com/questions/70990838
复制相似问题