NFT發行鑄造合集交易平臺系統開發原始碼部署
當一個智慧合約需要在區塊鏈上開發+18I鏈上合約-259l開發系統3365儲存資料或被其它智慧合約呼叫
(透過syscall System.Contract.Call)時,需要部署。而僅由合約賬戶鑑權觸發的合約,如鎖倉合約、多方簽名合約,不會被
其它合約呼叫,所以無需部署。像return 1+1這樣的合約,因為沒有任何需要輸入的引數,也無需部署。
從程式語言的角度來說,當智慧合約要作為一個類庫使用時,才需要被部署。比如以下情況:
當一個智慧合約有可變的傳入引數,此時它必須作為一個類庫,由呼叫者或者其它的智慧合約提供引數。
當一個智慧合約使用儲存區(Storage)時,必須作為一個類庫。
當一個智慧合約實現了NEP-17(合約資產)時,需要將該合約部署到區塊鏈上。
智慧合約的部署是透過交易呼叫API來部署。通常的做法是透過Neo-CLI或Neo-GUI的智慧合約釋出功能來部署合約。
pragma solidity ^0.8.4;
import '@openzeppelin/contracts/token/ERC721/ERC721.sol';
import '@openzeppelin/contracts/access/Ownable.sol';
// 繼承ERC721, Ownable
contract SimpleMintContract is ERC721, Ownable {
// mint 價格
uint256 public mintPrice = 0.05 ether;
// 總共已經被mint數量
uint256 public totalSupply;
// 可以mint的最大數量
uint256 public maxSupply;
// 是否開啟mint
bool public isMintEnabled;
// 每個地址mint => 數量
mapping(address => uint256) public mintedWallets;
// 建構函式,部署合約的時候,設定最大數量為2
constructor() payable ERC721('Simple Mint', 'SIMPLEMINT') {
maxSupply = 2;
}
// 外部呼叫函式,開啟mint
function toggleIsMintEnabled() external onlyOwner {
isMintEnabled = !isMintEnabled;
}
// 設定最大mint數量
function setMaxSuppley(uint256 _maxSupply) external onlyOwner {
maxSupply = _maxSupply;
}
// mint函式
function mint() external payable {
// require判斷函式,前半部判斷為false,則丟擲後半部分資訊
// 判斷是否開啟mint
require(isMintEnabled, 'minting not enabled');
// 判斷地址是否已經mint
require(mintedWallets[msg.sender] < 1, 'exceeds max per wallet');
// 判斷髮送到合約的eth數量是否跟mint價格一樣
require(msg.value == mintPrice, 'wrong value');
// 判斷是否還有可以mint的數量
require(maxSupply > totalSupply, 'sold out');
mintedWallets[msg.sender]++;
totalSupply++;
uint256 tokenId = totalSupply;
_safeMint(msg.sender, tokenId);
}
}
NFT 是我們用以代表獨特物品所有權的代幣。 NFT 讓我們把諸如藝術品、收藏品、甚至房地產等物品代幣化。 他們一次只有一個正式主人,並且受到以太坊區塊鏈的保護 - 沒有人可以修改所有權記錄或者根據現有的 NFT 複製貼上一份新的。
NFT 代表非同質化代幣。 非同質化是一個經濟術語,您可以用它來描述傢俱、歌曲檔案或您的電腦等物品。 這些東西不能與其他物品互換,因為它們具有獨特屬性。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70012429/viewspace-2946170/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- NFT交易平臺系統開發丨NFT發行鑄造交易系統開發詳情原始碼搭建原始碼
- 鏈上NFT鑄造發行交易平臺開發功能分析原始碼部署原始碼
- NFT交易平臺Opensea丨NFT藝術品鑄造交易系統開發功能分析原始碼部署原始碼
- NFT鑄造合集智慧合約交易平臺系統開發丨技術介紹
- NFT鑄造交易丨Opensae交易平臺系統開發技術分析
- NFT鑄造競拍交易平臺dapp系統開發合約部署詳情APP
- NFT鏈上鑄造交易平臺系統開發功能分析
- NFT 鑄造交易 OpenSea 平臺系統開發案例技術介紹
- NFT鑄造智慧合約交易平臺系統開發丨Opensea系統開發介紹
- NFT數字藏品鑄造系統開發(開發方案)丨NFT數字藏品鑄造系統開發(開發原始碼)原始碼
- NFT鑄造交易合成平臺系統開發丨區塊鏈智慧合約部署程式碼詳情區塊鏈
- NFT鑄造合成質押挖礦系統開發|NFT交易開發
- NFT鑄造智慧合約平臺開發方案部署原始碼建議參考原始碼
- NFT鑄造合約平臺系統開發詳情案例
- 公鏈NFT交易鑄造平臺系統開發詳情技術分析丨框架程式碼框架
- NFT鏈上鑄造合成交易系統開發丨openseaNFT平臺搭建技術
- NFT模式APP原始碼開發|NFT交易平臺模式APP原始碼
- { NFT }鑄造智慧合約交易平臺模式軟體開發(方案)模式
- NFT鏈上鑄造opensea交易系統開發技術方案
- NFT鑄造鏈上智慧合約系統開發(詳情方案)丨NFT鏈上鑄造智慧合約系統開發(需求原始碼)原始碼
- 【區塊鏈】NFT數字藏品鑄造系統開發原始碼案例區塊鏈原始碼
- NFT數字藏品鏈上鑄造系統開發(開發案例)及原始碼功能原始碼
- NFT鑄造盲盒挖礦系統開發|NFT模式開發模式
- NFT鏈上鑄造智慧合約系統開發(模型探討) | NFT鏈上智慧合約鑄造系統原始碼demo模型原始碼
- 鑄造NFT鏈上合成交易智慧合約平臺系統開發丨技術介紹
- NFT鑄造鏈上智慧合約系統開發(詳細說明)丨NFT鑄造鏈上智慧合約原始碼版開發原始碼
- OPensea/dapp/nft數字藏品交易平臺系統開發詳情案例/原始碼部署/成熟技術APP原始碼
- NFT鑄造交易合成盲盒交易系統開發詳情丨DAPP技術框架APP框架
- NFT鑄造合成交易盲盒質押系統開發詳情方案
- web3.0智慧合約NFT鑄造交易系統開發詳情方案Web
- 數字藏品nft系統開發平臺搭建原始碼原始碼
- NFT數字藏品交易系統開發平臺搭建
- NFT鏈上鑄造交易智慧合約開發demo
- web3.0智慧合約NFT鑄造系統開發平臺詳情分析丨框架Web框架
- NFT鏈上鑄造交易智慧合約模式系統開發詳情介紹模式
- NFT交易平臺定製開發|NFT交易平臺專案搭建
- OpenSea藏品交易平臺開發NFT系統搭建技術
- NFT鑄造合成遊戲系統開發技術方案遊戲