Erc-721
ERC721 - 如何一次創建多個 ERC721 代幣
是否可以一次創建多個 ERC721 代幣?我看到了這個連結。 ERC721 - 在一個函式呼叫中創建 1000 個令牌 但我不明白。請幫我。
是的,您可以一次創建多個 ERC721 代幣,但是,您可以通過單個函式呼叫創建的代幣數量取決於您交易的 gas 成本。如果您的交易成本超過 gas 限制,即大約 8000000,那麼您的功能將不會成功。
是的,您可以使用複製合約 ERC-1167。這是我以前寫過的一個簡單範例:
function mint(uint256 _numberOfToken) public onlyOwner returns(address[] memory) { require(_numberOfToken < 30); address[] memory output = new address[](_numberOfToken); for(int i = 0; i < _numberOfToken; i++) { returnAddress[i] = createClone(YOUR_CORE_ERC721_ADDRESS_HERE); } emit createNewToken(returnAddress) return returnAddress; }
createClone 函式取自ERC1167 實現
所以在一般的想法中,首先你部署你的主 ERC721 並部署另一個從你的主 ERC721 創建複製的合約。當您想創建許多新的 ERC721 時,您只需呼叫該合約並獲取返回值。
順便說一句,我將 30 設置為 maxium 的原因是因為這個函式會消耗大量的 gas,如果像使用者一樣嘗試呼叫 100,那麼程式碼將會中斷,所以我只想呼叫 maxium 時只有 30 個令牌。