Solidity

如果單個應付函式中有兩個事件,是否保證兩個事件日誌具有相同的 transactionHash?

  • February 6, 2022

purchase我有一個簡單的合約,在呼叫函式時會發出兩個事件。

contract OwnedToken {
  ...

  function purchase(tokenId) public payable{
      ...
      FirstEvent(...);
      ...
      SecondEvent(...);
      ...
  }
  ...
}

我在 Rinkeby 網路和日誌上對其進行了測試,FirstEvent並且SecondEvent似乎具有相同的transactionHash& blockNumber

即使在主網中,是否保證transactionHash上述兩個事件日誌都相同?

是的,這兩個事件將具有相同的transactionHash:它們都由相同的單個事務觸發。此範例假定沒有可能僅發出其中一個事件的條件邏輯。

引用自:https://ethereum.stackexchange.com/questions/120926