Web3js
你如何添加礦工地址以便它可以鑄造代幣?
我有我正在製作的 ERC721。
function mint(address to, uint256 tokenId) public onlyMinter returns (bool) { _mint(to, tokenId); return true; }
我怎樣才能添加地址以便它能夠鑄幣?我可以簡單地編寫一個呼叫 addMinter(address) 的函式嗎?還是我必須在建構子中這樣做?
鑄幣者可以呼叫addMinter
像這樣的東西應該工作
token.methods.addMinter(newMinterAddress) .send({ from: existingMinter })
這不是 ERC-721 的內置功能,您需要使用擴展。
Xcert,0xcert 的合約有這個功能。
這是相關程式碼
/** * @dev Creates a new Xcert. * @param _to The address that will own the created Xcert. * @param _id The Xcert to be created by the msg.sender. * @param _imprint Cryptographic asset imprint. */ function create( address _to, uint256 _id, bytes32 _imprint ) external hasAbilities(ABILITY_CREATE_ASSET) { super._create(_to, _id); idToImprint[_id] = _imprint; }
並且使用 來跟踪能力
Abilitable
。您將為這個其他實體設置鑄幣者。