Openzeppelin
_setupDecimals() – 未定義的標識符
我正在嘗試使用 OpenZeppelin 指定令牌的小數位數。這將導致編譯錯誤:
import {ERC20} from "@openzeppelin/contracts/token/ERC20/ERC20.sol"; contract MyToken is ERC20 { //........ constructor() ERC20("my token", "a") { // _mint(..... ) _setupDecimals(4); // – undefined identifier } //.........
怎麼了?
_setupDecimals
不是普通 OpenZepplin ERC20 合約的功能。要更改小數,您可以覆蓋該
decimals
函式並返回另一個值。編輯: ERC20 合約的建構子文件中也提到了這一點:
{decimals} 的預設值為 18。要為 {decimals} 選擇不同的值,您應該重載它。