Javascript 如何收听Metamask';s web3';s";“确认”/&引用;取消“;合同事件?

Javascript 如何收听Metamask';s web3';s";“确认”/&引用;取消“;合同事件?,javascript,ethereum,web3,metamask,Javascript,Ethereum,Web3,Metamask,由于metamask的注入web3如下 但是在调用contract.new()时,似乎没有编码来捕获确认/取消按钮单击事件(下面的img) 有没有办法赶上这场比赛?谢谢。我自己找到了答案 如果用户单击“取消”按钮,下面的“processedContract”变量将未定义。 如果确认,它将是合同,如果它有一个地址(processedContract.address),那么它将被挖掘 newContract.new({...}, function(e, processedContract) {..

由于metamask的注入web3如下

但是在调用contract.new()时,似乎没有编码来捕获确认/取消按钮单击事件(下面的img)

有没有办法赶上这场比赛?谢谢。

我自己找到了答案

如果用户单击“取消”按钮,下面的“processedContract”变量将未定义。 如果确认,它将是合同,如果它有一个地址(processedContract.address),那么它将被挖掘

newContract.new({...}, function(e, processedContract) {...});

要处理用户对合同函数的确认/取消响应,您可以使用send函数中的transactionHash事件和error事件

“transactionHash”返回transactionHash:String:在事务哈希可用时激发

“error”返回error:error:如果在发送过程中发生错误,则将触发。如果网络使用回执拒绝交易,回执将作为错误对象的属性可用

当您单击确认按钮时,您可以在transactionHash事件中处理此情况

当您单击取消按钮时,您可以在错误事件中处理此情况