Solidity
如何在 ERC1155 中表示多個相同類型的 NFT?
讓我們以 cryptokitties 為例,如果我要在 ERC721 中創建類似的東西,我將創建一個名為 cryptokitties 的智能合約和一個鑄幣函式,該函式會在每次鑄幣時增加代幣 ID。我如何在 ERC1155 中做到這一點?
我只知道為了表示一個 nft,你傳遞 1 的值,這意味著它是一個 nft,如果你傳遞的值大於 1,這意味著它是可替代的,我不知道要創建多少個加密貓,因此我不能通過mint 函式的任何值。
你可以做的是有一個跟踪 NFT 所屬的映射,如下所示:
mapping(uint256=> string) public nftsCollections; //whenever you mint an nft require the admin to pass the collection name and //add it to this collection nftsCollections[id]=collectionName;
每隻加密貓都是自己的 nft。你不應該在 ERC1155 中這樣做。每次創建 cryptokittie 時,您都會鑄造一個新的 nft 令牌,您不會添加到已經存在的令牌中。如果您使用 ERC1155,您可以啟用擁有多個 nft 實例的選項,這否定了它的全部目的。