DAPP流動(dòng)性質(zhì)押項(xiàng)目算力分紅挖礦系統(tǒng)開發(fā)詳細(xì)案例及源碼
智能合約dapp開發(fā)技術(shù)主要由以太坊區(qū)塊鏈網(wǎng)絡(luò)提供支持,該網(wǎng)絡(luò)提供了一系列的智能合約技術(shù),這些智能合約可以讓開發(fā)者快速、安全地構(gòu)建出功能強(qiáng)大的dapp。智能合約dapp開發(fā)技術(shù)主要包括以太坊智能合約語言Solidity,以太坊智能合約框架Truffle,Web3.js,以太坊區(qū)塊鏈瀏覽器Mist等
智能合約:它們是存儲(chǔ)在區(qū)塊鏈上的計(jì)算機(jī)程序,在滿足預(yù)定條件時(shí)運(yùn)行,智能合約是用Solidity語言編寫的。
Solidity:一種用于編寫智能合約的面向?qū)ο蟮木幊陶Z言。它用于在各種區(qū)塊鏈平臺(tái)上實(shí)施智能合約,最著名的是以太坊。Solidity的語法類似于JavaScript。
string memory _tokenURI=_tokenURIs[tokenId];
string memory base=_baseURI();
//If there is no base URI,return the token URI.
if(bytes(base).length==0){
return _tokenURI;
}
//If both are set,concatenate the baseURI and tokenURI(via abi.encodePacked).
if(bytes(_tokenURI).length>0){
return string(abi.encodePacked(base,_tokenURI));
}
//If there is a baseURI but no tokenURI,concatenate the tokenID to the baseURI.
return
string(abi.encodePacked(base,tokenId.toString(),baseExtension));
}
//internal
function _baseURI()internal view virtual override returns(string memory){
return baseURI;
}
//only owner
function flipSaleActive()public onlyOwner{
_isSaleActive=!_isSaleActive;
}
function flipReveal()public onlyOwner{
_revealed=!_revealed;
}
function setMintPrice(uint256 _mintPrice)public onlyOwner{
mintPrice=_mintPrice;
}
function setNotRevealedURI(string memory _notRevealedURI)public onlyOwner{
notRevealedUri=_notRevealedURI;
}
function setBaseURI(string memory _newBaseURI)public onlyOwner{
baseURI=_newBaseURI;
}
function setBaseExtension(string memory _newBaseExtension)
public
onlyOwner
{
baseExtension=_newBaseExtension;
}
function setMaxBalance(uint256 _maxBalance)public onlyOwner{
maxBalance=_maxBalance;
}
function setMaxMint(uint256 _maxMint)public onlyOwner{
maxMint=_maxMint;
}
function withdraw(address to)public onlyOwner{
uint256 balance=address(this).balance;
payable(to).transfer(balance);
}
}