如何监听 Metamask 的 web3 合约的 "confirm"/"cancel" 事件?
How to listen to Metamask's web3's "confirm"/"cancel" event of a contract?
由于 metamask 注入的 web3 遵循 https://github.com/ethereum/wiki/wiki/JavaScript-API
但是调用contract.new()
时似乎没有编码来捕获confirm/cancel按钮点击事件(下图)
有没有办法赶上这个事件?谢谢。
自己找到答案
如果用户点击了'cancel'按钮,下面的'processedContract'变量将是未定义的。
如果确认,它将是合同,如果它有一个地址(processedContract.address),那么它正在被开采。
newContract.new({...}, function(e, processedContract) {...});
要处理 Confirm/Cancel 用户对你的合约函数的响应,你可以使用 transactionHash 事件和 error 事件发送功能。
"transactionHash" returns transactionHash: String: Fired when the transaction hash is available.
"error" returns error: Error: Fired if an error occurs during sending. If the transaction was rejected by the network with a receipt, the receipt will be available as a property on the error object.
当您点击 确认 按钮时,您可以在 transactionHash 事件中处理这种情况。
当您点击取消按钮时,您可以在错误事件中处理这种情况。
由于 metamask 注入的 web3 遵循 https://github.com/ethereum/wiki/wiki/JavaScript-API
但是调用contract.new()
时似乎没有编码来捕获confirm/cancel按钮点击事件(下图)有没有办法赶上这个事件?谢谢。
自己找到答案
如果用户点击了'cancel'按钮,下面的'processedContract'变量将是未定义的。 如果确认,它将是合同,如果它有一个地址(processedContract.address),那么它正在被开采。
newContract.new({...}, function(e, processedContract) {...});
要处理 Confirm/Cancel 用户对你的合约函数的响应,你可以使用 transactionHash 事件和 error 事件发送功能。
"transactionHash" returns transactionHash: String: Fired when the transaction hash is available.
"error" returns error: Error: Fired if an error occurs during sending. If the transaction was rejected by the network with a receipt, the receipt will be available as a property on the error object.
当您点击 确认 按钮时,您可以在 transactionHash 事件中处理这种情况。
当您点击取消按钮时,您可以在错误事件中处理这种情况。