solidity 中的修饰符

Modifiers in solidity

我正在写一个合约,其中一个函数可以被 valid useradmin 修改。

我可以在同一个函数中使用两个修饰符,并且如果其中一个修饰符成功就可以访问该函数吗?

或者有什么方法可以让管理员绕过所有修饰符和条件?

您可以创建一个简单的修改器来检查这两个条件。

modifier onlyAllowedUsers {
  require(validUser[msg.sender] || admin == msg.sender, "Error Message");
  _;
}

假设 validUser 是一个将地址映射到布尔值的映射。