Require

‘require()’ 返回什麼?

  • September 22, 2022

當您require()使用等於 false 的參數呼叫時,require 將拋出錯誤,其餘程式碼將不會執行並且事務將恢復。

如果您使用等於 true 的參數呼叫它,則程式碼將按預期執行。

那麼什麼需要退貨呢?說如果你去if(require(false)) {}了,會發生什麼?

require函式不返回任何內容。您不能將其用作if(require(false)) {},它不會編譯。

如果傳遞給require函式的條件為真,則不會發生任何事情,並且程式碼會繼續執行。如果條件返回 false,則require拋出不Error帶數據的 an 或可選的Error(string), 以及您作為第二個參數傳遞給require函式的字元串消息:

require(false, "There was an error");

檢查文件:https ://docs.soliditylang.org/en/v0.8.17/control-structures.html#panic-via-assert-and-error-via-require

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