Solidity
在 require 語句失敗時發出事件
我希望能夠記錄一個條件的結果:
if(time > 5) { emit Result("time is larger than 5"); } else { emit Result("time is less than 5"); }
這可以正常工作,但是在使用
require
語句時:require(time > 5); emit Result("time is larger than 5");
我只能在
require
成功的情況下記錄事件。如果
require
出現在修飾符中:modifier OnlyLargerThan5() { require(time > 5); emit Result("time is larger than 5"); _; }
if..else
除了語句之外,有沒有辦法記錄這兩種情況(更大> 5> 更少) ?
該
if...else
聲明是一個完全有效的選項,也是我建議的選項。如果需要,您可以做的就是在 require 語句中包含一條消息。這不會是一個事件,但看起來像這樣:
require(time > 5, "time is less than 5"); emit Result("time is larger than 5");